| | |
| | | * The timer used to run the timeout code (timer tasks) for the assured update |
| | | * messages we are waiting acks for. |
| | | */ |
| | | private Timer assuredTimeoutTimer = null; |
| | | private Timer assuredTimeoutTimer; |
| | | /** |
| | | * Counter used to purge the timer tasks references in assuredTimeoutTimer, |
| | | * every n number of treated assured messages. |
| | | */ |
| | | private int assuredTimeoutTimerPurgeCounter = 0; |
| | | |
| | | private ServerState ctHeartbeatState = null; |
| | | private ServerState ctHeartbeatState; |
| | | |
| | | /** |
| | | * Creates a new ReplicationServerDomain associated to the DN baseDn. |
| | |
| | | */ |
| | | MessageBuilder mb = new MessageBuilder(); |
| | | mb.append(ERR_CHANGELOG_SHUTDOWN_DATABASE_ERROR.get()); |
| | | mb.append(" "); |
| | | mb.append(stackTraceToSingleLineString(e)); |
| | | logError(mb.toMessage()); |
| | | localReplicationServer.shutdown(); |
| | |
| | | * Servers that are not in this list are servers not eligible for an ack |
| | | * request. |
| | | */ |
| | | public List<Integer> expectedServers = null; |
| | | public List<Integer> expectedServers; |
| | | |
| | | /** |
| | | * The constructed ExpectedAcksInfo object to be used when acks will be |
| | | * received. Null if expectedServers is null. |
| | | */ |
| | | public ExpectedAcksInfo expectedAcksInfo = null; |
| | | public ExpectedAcksInfo expectedAcksInfo; |
| | | } |
| | | |
| | | /** |
| | |
| | | Integer.toString(localReplicationServer.getServerId()), |
| | | Integer.toString(origServer.getServerId()), |
| | | csn.toString(), baseDn)); |
| | | mb.append(" "); |
| | | mb.append(stackTraceToSingleLineString(e)); |
| | | logError(mb.toMessage()); |
| | | stopServer(origServer, false); |
| | |
| | | */ |
| | | private class AssuredTimeoutTask extends TimerTask |
| | | { |
| | | private CSN csn = null; |
| | | private CSN csn; |
| | | |
| | | /** |
| | | * Constructor for the timer task. |
| | |
| | | Integer.toString(localReplicationServer.getServerId()), |
| | | Integer.toString(origServer.getServerId()), |
| | | csn.toString(), baseDn)); |
| | | mb.append(" "); |
| | | mb.append(stackTraceToSingleLineString(e)); |
| | | logError(mb.toMessage()); |
| | | stopServer(origServer, false); |
| | |
| | | if (safeRead) |
| | | { |
| | | expectedDSInTimeout.incrementAssuredSrSentUpdatesTimeout(); |
| | | } else |
| | | { |
| | | // No SD update sent to a DS (meaningless) |
| | | } |
| | | } // else no SD update sent to a DS (meaningless) |
| | | } else if (expectedRSInTimeout != null) |
| | | { |
| | | if (safeRead) |
| | |
| | | */ |
| | | MessageBuilder mb2 = new MessageBuilder(); |
| | | mb2.append(ERR_CHANGELOG_ERROR_SENDING_ERROR.get(this.toString())); |
| | | mb2.append(" "); |
| | | mb2.append(stackTraceToSingleLineString(ignored)); |
| | | logError(mb2.toMessage()); |
| | | stopServer(msgEmitter, false); |