| | |
| | | " has servers connected to it - will not reset generationId"); |
| | | } |
| | | |
| | | if ((!lDAPServersConnectedInTheTopology) && (!this.generationIdSavedStatus)) |
| | | if ((!lDAPServersConnectedInTheTopology) && (!this.generationIdSavedStatus) |
| | | && (generationId != -1)) |
| | | { |
| | | setGenerationId(-1, false); |
| | | } |
| | |
| | | " baseDN=" + baseDn + |
| | | " RCache.set GenerationId=" + generationId); |
| | | |
| | | if (generationId == this.generationId) |
| | | return; |
| | | |
| | | if (this.generationId>0) |
| | | if (this.generationId != generationId) |
| | | { |
| | | // we are changing of genId |
| | | clearDbs(); |
| | | |
| | | this.generationId = generationId; |
| | | this.generationIdSavedStatus = savedStatus; |
| | | |
| | | // they have a generationId different from the reference one |
| | | for (ServerHandler handler : connectedServers.values()) |
| | | { |
| | | handler.warnBadGenerationId(); |
| | | if (generationId != handler.getGenerationId()) |
| | | { |
| | | // Notify our remote LS that from now on have a different genID |
| | | handler.warnBadGenerationId(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | this.generationId = generationId; |
| | | this.generationIdSavedStatus = savedStatus; |
| | | |
| | | } |
| | | |
| | | /** |
| | |
| | | { |
| | | long newGenId = genIdMsg.getGenerationId(); |
| | | |
| | | if (debugEnabled()) |
| | | TRACER.debugInfo( |
| | | "In " + this.replicationServer.getMonitorInstanceName() + |
| | | " baseDN=" + baseDn + |
| | | " RCache.resetGenerationId received new ref genId=" + newGenId); |
| | | |
| | | // Notifies the remote LDAP servers that from now on |
| | | // they have a generationId different from the reference one |
| | | for (ServerHandler handler : connectedServers.values()) |
| | | if (newGenId != this.generationId) |
| | | { |
| | | if (newGenId != handler.getGenerationId()) |
| | | { |
| | | handler.warnBadGenerationId(); |
| | | } |
| | | this.setGenerationId(newGenId, false); |
| | | } |
| | | |
| | | // If we are the first replication server warned, |
| | |
| | | { |
| | | try |
| | | { |
| | | // After we'll have send the mssage , the remote RS will adopt |
| | | // the new genId |
| | | rsHandler.setGenerationId(newGenId); |
| | | if (senderHandler.isLDAPserver()) |
| | | { |
| | |
| | | get(rsHandler.getMonitorInstanceName())); |
| | | } |
| | | } |
| | | |
| | | clearDbs(); |
| | | |
| | | // Reset the in memory domain generationId |
| | | generationId = newGenId; |
| | | |
| | | } |
| | | |
| | | /** |