private <T> T executeWithSession(SessionCallable<T> sessionCallable) { ReconnectionPolicy reconnectionPolicy = cluster.getConfiguration().getPolicies().getReconnectionPolicy(); ReconnectionSchedule schedule = reconnectionPolicy.newSchedule(); long deadline = System.currentTimeMillis() + noHostAvailableRetryTimeout.toMillis(); while (true) { try { return sessionCallable.executeWithSession(session.get()); } catch (NoHostAvailableException e) { long timeLeft = deadline - System.currentTimeMillis(); if (timeLeft <= 0) { throw e; } else { long delay = Math.min(schedule.nextDelayMs(), timeLeft); log.warn(e.getCustomMessage(10, true, true)); log.warn("Reconnecting in %dms", delay); try { Thread.sleep(delay); } catch (InterruptedException interrupted) { Thread.currentThread().interrupt(); throw new RuntimeException("interrupted", interrupted); } } } } }
ReconnectionPolicy reconnectionPolicy() { return configuration.getPolicies().getReconnectionPolicy(); }
.getMaxRequestsPerConnection(distance), 128); Assert.assertEquals(configuration.getPolicies().getLoadBalancingPolicy().getClass().getName(), TAP); Assert.assertEquals(configuration.getPolicies().getReconnectionPolicy().getClass().getName(), CRP); Assert.assertEquals(configuration.getPolicies().getRetryPolicy().getClass().getName(), LRTP);
Assert.assertEquals(configuration.getPolicies().getLoadBalancingPolicy().getClass().getName(), LatencyAwarePolicy.class.getName()); Assert.assertEquals(configuration.getPolicies().getReconnectionPolicy().getClass().getName(), CRP); Assert.assertEquals(configuration.getPolicies().getRetryPolicy().getClass().getName(), LRTP);
Assert.assertEquals(configuration.getPolicies().getReconnectionPolicy().getClass().getName(), ERP); Assert.assertEquals(configuration.getPolicies().getRetryPolicy().getClass().getName(), DCRP);
Assert.assertEquals(configuration.getPolicies().getReconnectionPolicy().getClass().getName(), ERP); Assert.assertEquals(configuration.getPolicies().getRetryPolicy().getClass().getName(), DCRP);
Assert.assertEquals(configuration.getPolicies().getReconnectionPolicy().getClass().getName(), CRP); Assert.assertEquals(configuration.getPolicies().getRetryPolicy().getClass().getName(), DCRP);
if (!(cluster().getConfiguration().getPolicies().getReconnectionPolicy() instanceof ConstantReconnectionPolicy)) { fail("Set policy does not match retrieved policy."); cluster().getConfiguration().getPolicies().getReconnectionPolicy(); assertTrue(reconnectionPolicy.getConstantDelayMs() == 10 * 1000);
if (!(cluster().getConfiguration().getPolicies().getReconnectionPolicy() instanceof ExponentialReconnectionPolicy)) { fail("Set policy does not match retrieved policy."); cluster().getConfiguration().getPolicies().getReconnectionPolicy(); assertTrue(reconnectionPolicy.getBaseDelayMs() == 2 * 1000); assertTrue(reconnectionPolicy.getMaxDelayMs() == 5 * 60 * 1000);
ReconnectionPolicy reconnectionPolicy() { return configuration.getPolicies().getReconnectionPolicy(); }
ReconnectionPolicy reconnectionPolicy() { return configuration.getPolicies().getReconnectionPolicy(); }
ReconnectionPolicy reconnectionPolicy() { return configuration.getPolicies().getReconnectionPolicy(); }
ReconnectionPolicy reconnectionPolicy() { return configuration.getPolicies().getReconnectionPolicy(); }
private <T> T executeWithSession(SessionCallable<T> sessionCallable) { ReconnectionPolicy reconnectionPolicy = cluster.getConfiguration().getPolicies().getReconnectionPolicy(); ReconnectionSchedule schedule = reconnectionPolicy.newSchedule(); long deadline = System.currentTimeMillis() + noHostAvailableRetryTimeout.toMillis(); while (true) { try { return sessionCallable.executeWithSession(session.get()); } catch (NoHostAvailableException e) { long timeLeft = deadline - System.currentTimeMillis(); if (timeLeft <= 0) { throw e; } else { long delay = Math.min(schedule.nextDelayMs(), timeLeft); log.warn(e.getCustomMessage(10, true, true)); log.warn("Reconnecting in %dms", delay); try { Thread.sleep(delay); } catch (InterruptedException interrupted) { Thread.currentThread().interrupt(); throw new RuntimeException("interrupted", interrupted); } } } } }
private <T> T executeWithSession(SessionCallable<T> sessionCallable) { ReconnectionPolicy reconnectionPolicy = cluster.getConfiguration().getPolicies().getReconnectionPolicy(); ReconnectionSchedule schedule = reconnectionPolicy.newSchedule(); long deadline = System.currentTimeMillis() + noHostAvailableRetryTimeout.toMillis(); while (true) { try { return sessionCallable.executeWithSession(session.get()); } catch (NoHostAvailableException e) { long timeLeft = deadline - System.currentTimeMillis(); if (timeLeft <= 0) { throw e; } else { long delay = Math.min(schedule.nextDelayMs(), timeLeft); log.warn(e.getCustomMessage(10, true, true)); log.warn("Reconnecting in %dms", delay); try { Thread.sleep(delay); } catch (InterruptedException interrupted) { Thread.currentThread().interrupt(); throw new RuntimeException("interrupted", interrupted); } } } } }
if (!(cluster().getConfiguration().getPolicies().getReconnectionPolicy() instanceof ConstantReconnectionPolicy)) { fail("Set policy does not match retrieved policy."); cluster().getConfiguration().getPolicies().getReconnectionPolicy(); assertTrue(reconnectionPolicy.getConstantDelayMs() == 10 * 1000);
@Test public void cassandraSessionWithConfiguration() throws Exception { ApplicationContext testContext = getTestApplicationContext( "cloud-cassandra-with-config.xml", createService("my-service")); Cluster cluster = testContext.getBean("cassandra-full-config", getConnectorType()); assertNotNull(cluster.getConfiguration().getSocketOptions()); assertEquals(15000, cluster.getConfiguration().getSocketOptions().getConnectTimeoutMillis()); assertTrue(DefaultRetryPolicy.class.isAssignableFrom( cluster.getConfiguration().getPolicies().getRetryPolicy().getClass())); assertTrue(RoundRobinPolicy.class.isAssignableFrom(cluster.getConfiguration() .getPolicies().getLoadBalancingPolicy().getClass())); assertTrue(ConstantReconnectionPolicy.class.isAssignableFrom(cluster .getConfiguration().getPolicies().getReconnectionPolicy().getClass())); }
builder.withLoadBalancingPolicy(lbp); ReconnectionPolicy rnp = policies != null ? policies.getReconnectionPolicy() : null; if (rnp != null) { builder.withReconnectionPolicy(rnp);
.withPort(port) .withLoadBalancingPolicy(config.getPolicies().getLoadBalancingPolicy()) .withReconnectionPolicy(config.getPolicies().getReconnectionPolicy()) .withRetryPolicy(config.getPolicies().getRetryPolicy()) .withCompression(config.getProtocolOptions().getCompression())
assertThat(policies.getLoadBalancingPolicy(), is(config.getLoadBalancingPolicy())); assertThat(policies.getReconnectionPolicy(), is(config.getReconnectionPolicy())); assertThat(policies.getRetryPolicy(), is(config.getRetryPolicy()));