@Override public void run() { try { logger.debug(activeMQServer + "::Stopping live node in favor of failback"); NodeManager nodeManager = activeMQServer.getNodeManager(); activeMQServer.stop(true, false, true); // ensure that the server to which we are failing back actually starts fully before we restart nodeManager.start(); try { nodeManager.awaitLiveStatus(); } finally { nodeManager.stop(); } synchronized (failbackCheckerGuard) { if (cancelFailBackChecker || !sharedStoreSlavePolicy.isRestartBackup()) return; activeMQServer.setHAPolicy(sharedStoreSlavePolicy); logger.debug(activeMQServer + "::Starting backup node now after failback"); activeMQServer.start(); } } catch (Exception e) { ActiveMQServerLogger.LOGGER.serverRestartWarning(e); } } });
activeMQServer.setHAPolicy(replicaPolicy.getReplicatedPolicy());
@Override public void run() { try { if (replicatedPolicy.isCheckForLiveServer() && isNodeIdUsed()) { //set for when we failback if (logger.isTraceEnabled()) { logger.tracef("@@@ setting up replicatedPolicy.getReplicaPolicy for back start, replicaPolicy::%s, isBackup=%s, server=%s", replicatedPolicy.getReplicaPolicy(), replicatedPolicy.isBackup(), activeMQServer); } replicatedPolicy.getReplicaPolicy().setReplicatedPolicy(replicatedPolicy); activeMQServer.setHAPolicy(replicatedPolicy.getReplicaPolicy()); return; } logger.trace("@@@ did not do it now"); activeMQServer.initialisePart1(false); activeMQServer.getClusterManager().getQuorumManager().registerQuorumHandler(new ServerConnectVoteHandler(activeMQServer)); activeMQServer.initialisePart2(false); activeMQServer.completeActivation(); if (activeMQServer.getIdentity() != null) { ActiveMQServerLogger.LOGGER.serverIsLive(activeMQServer.getIdentity()); } else { ActiveMQServerLogger.LOGGER.serverIsLive(); } } catch (Exception e) { ActiveMQServerLogger.LOGGER.initializationError(e); activeMQServer.callActivationFailureListeners(e); } }
activeMQServer.setHAPolicy(sharedStoreSlavePolicy.getSharedStoreMasterPolicy());
ActiveMQServerLogger.LOGGER.restartingReplicatedBackupAfterFailback(); activeMQServer.setHAPolicy(replicatedPolicy.getReplicaPolicy()); activeMQServer.start(); } else {