Changeset c01bf47 for router


Ignore:
Timestamp:
Jun 5, 2019 5:37:23 PM (10 months ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
6d72aee
Parents:
4bd0f06
Message:

NetDb?: Fix to set netDb ready immediately after reseed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java

    r4bd0f06 rc01bf47  
    344344        private volatile long _lastModified;
    345345        private volatile long _lastReseed;
     346        private volatile boolean _setNetDbReady;
    346347        private static final int MIN_ROUTERS = KademliaNetworkDatabaseFacade.MIN_RESEED;
    347348        private static final long MIN_RESEED_INTERVAL = 90*60*1000;
     
    458459                    // checkReseed will call wakeup() when done and we will run again
    459460                } else {
     461                    _setNetDbReady = true;
    460462                    _context.router().setNetDbReady();
    461463                }
     
    467469                        // checkReseed will call wakeup() when done and we will run again
    468470                } else {
    469                     _context.router().setNetDbReady();
     471                    if (!_setNetDbReady) {
     472                        _setNetDbReady = true;
     473                        _context.router().setNetDbReady();
     474                    }
     475                }
     476            } else {
     477                // second time through, reseed called wakeup()
     478                if (!_setNetDbReady) {
     479                    int count = Math.min(routerCount, size());
     480                    if (count >= MIN_ROUTERS) {
     481                        _setNetDbReady = true;
     482                        _context.router().setNetDbReady();
     483                    }
    470484                }
    471485            }
Note: See TracChangeset for help on using the changeset viewer.