private void createSessionFactory() throws Exception { locator.setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setFailoverOnInitialConnection(true) // unnecessary? .setReconnectAttempts(15); sf = createSessionFactoryAndWaitForTopology(locator, 2); }
private void createSessionFactory(int members) throws Exception { locator.setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setFailoverOnInitialConnection(true) // unnecessary? .setReconnectAttempts(15); sf = createSessionFactoryAndWaitForTopology(locator, members); }
/** * Test that if the only server is running and failing we trigger * the event FailoverEventType.FAILOVER_FAILED in the end * * @throws Exception */ @Test public void testFailoverFailed() throws Exception { locator.setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setFailoverOnInitialConnection(true) // unnecessary? .setReconnectAttempts(1); sf = createSessionFactoryAndWaitForTopology(locator, 2); //make sure no backup server is running backupServer.stop(); CountDownLatch failureLatch = new CountDownLatch(1); CountDownLatch failureDoneLatch = new CountDownLatch(1); SessionFactoryFailoverListener listener = new SessionFactoryFailoverListener(failureLatch, failureDoneLatch); sf.addFailoverListener(listener); ClientSession session = sendAndConsume(sf, true); liveServer.crash(session); assertTrue(failureLatch.await(5, TimeUnit.SECONDS)); assertEquals(FailoverEventType.FAILURE_DETECTED, listener.getFailoverEventType().get(0)); assertTrue(failureDoneLatch.await(5, TimeUnit.SECONDS)); assertEquals(FailoverEventType.FAILOVER_FAILED, listener.getFailoverEventType().get(1)); assertEquals("Expected 2 FailoverEvents to be triggered", 2, listener.getFailoverEventType().size()); session.close(); wrapUpSessionFactory(); }
serverLocator.setBlockOnNonDurableSend(!useDuplicateDetection); serverLocator.setCallTimeout(callTimeout); serverLocator.setCallFailoverTimeout(callFailoverTimeout);
@Override @Before public void setUp() throws Exception { startBackupServer = false; super.setUp(); setNumberOfMessages(defaultNMsgs); locator = (ServerLocatorInternal) getServerLocator().setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setReconnectAttempts(15).setRetryInterval(200); sessionFactory = createSessionFactoryAndWaitForTopology(locator, 1); sessionFactory.addFailoverListener(failoverWaiter); syncDelay = new BackupSyncDelay(backupServer, liveServer); }
for (int i = 0; i < numIts; i++) { AsynchronousFailoverTest.log.info("Iteration " + i); ServerLocator locator = getServerLocator().setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setReconnectAttempts(15).setConfirmationWindowSize(10 * 1024 * 1024); sf = createSessionFactoryAndWaitForTopology(locator, 2); try {
@Test public void testOverflowSend() throws Exception { ServerLocator locator = getServerLocator().setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setReconnectAttempts(300).setProducerWindowSize(1000).setRetryInterval(100); final ArrayList<ClientSession> sessionList = new ArrayList<>(); Interceptor interceptorClient = new Interceptor() {
@Test public void testNoAutoFailback() throws Exception { locator.setBlockOnNonDurableSend(true).setBlockOnDurableSend(true).setFailoverOnInitialConnection(true).setReconnectAttempts(15); ClientSessionFactoryInternal sf = createSessionFactoryAndWaitForTopology(locator, 2); ClientSession session = sendAndConsume(sf, true); CountDownSessionFailureListener listener = new CountDownSessionFailureListener(1, session); session.addFailureListener(listener); backupServer.stop(); liveServer.crash(); backupServer.start(); assertTrue(listener.getLatch().await(5, TimeUnit.SECONDS)); ClientProducer producer = session.createProducer(ADDRESS); ClientMessage message = session.createMessage(true); setBody(0, message); producer.send(message); session.removeFailureListener(listener); Thread t = new Thread(new ServerStarter(liveServer)); t.start(); waitForRemoteBackup(sf, 10, false, backupServer.getServer()); assertTrue(backupServer.isStarted()); backupServer.crash(); waitForServerToStart(liveServer.getServer()); assertTrue(liveServer.isStarted()); sf.close(); assertEquals(0, sf.numSessions()); assertEquals(0, sf.numConnections()); }
targetLocator.setBlockOnNonDurableSend(!useDuplicateDetection);
serverLocator.setConnectionTTL(config.getConnectionTTL()); serverLocator.setBlockOnDurableSend(!config.isUseDuplicateDetection()); serverLocator.setBlockOnNonDurableSend(!config.isUseDuplicateDetection()); serverLocator.setMinLargeMessageSize(config.getMinLargeMessageSize()); serverLocator.setProducerWindowSize(config.getProducerWindowSize());