/** * @return the retry strategy to use when executing this bootstrap step */ protected RetryStrategy getRetryStrategy() { // exponential retries with a time limit of 5 minutes. return RetryStrategies.timeLimit(5, TimeUnit.MINUTES, RetryStrategies.exponentialDelay(200, 10000, TimeUnit.MILLISECONDS)); } }
/** * @return the retry strategy to use when executing this bootstrap step */ protected RetryStrategy getRetryStrategy() { // exponential retries with a time limit of 5 minutes. return RetryStrategies.timeLimit(5, TimeUnit.MINUTES, RetryStrategies.exponentialDelay(200, 10000, TimeUnit.MILLISECONDS)); } }
@Override public int waitFor(long timeout, TimeUnit unit) throws TimeoutException, InterruptedException { RetryStrategy retry = RetryStrategies.timeLimit(timeout, unit, RetryStrategies.fixDelay(100, TimeUnit.MILLISECONDS)); try { return Retries.supplyWithRetries(this::exitValue, retry, IllegalThreadStateException.class::isInstance); } catch (IllegalThreadStateException e) { throw new TimeoutException("Process is still running"); } }
@Override public int waitFor(long timeout, TimeUnit unit) throws TimeoutException, InterruptedException { RetryStrategy retry = RetryStrategies.timeLimit(timeout, unit, RetryStrategies.fixDelay(100, TimeUnit.MILLISECONDS)); try { return Retries.supplyWithRetries(this::exitValue, retry, IllegalThreadStateException.class::isInstance); } catch (IllegalThreadStateException e) { throw new TimeoutException("Process is still running"); } }
private RetryStrategy getRetryStrategy() { if (isRunning()) { return retryStrategy; } // If failure happen during shutdown, use a retry strategy that only retry fixed number of times return RetryStrategies.timeLimit(5, TimeUnit.SECONDS, RetryStrategies.fixDelay(200, TimeUnit.MILLISECONDS)); } }
private RetryStrategy getRetryStrategy() { if (isRunning()) { return retryStrategy; } // If failure happen during shutdown, use a retry strategy that only retry fixed number of times return RetryStrategies.timeLimit(5, TimeUnit.SECONDS, RetryStrategies.fixDelay(200, TimeUnit.MILLISECONDS)); } }
public AdminEventPublisher(CConfiguration cConf, MessagingContext messagingContext) { this.topic = NamespaceId.SYSTEM.topic(cConf.get(Constants.Metadata.MESSAGING_TOPIC)); this.retryStrategy = RetryStrategies.timeLimit( 20, TimeUnit.SECONDS, RetryStrategies.exponentialDelay(10, 200, TimeUnit.MILLISECONDS)); this.messagingContext = messagingContext; }
public AdminEventPublisher(CConfiguration cConf, MessagingContext messagingContext) { this.topic = NamespaceId.SYSTEM.topic(cConf.get(Constants.Metadata.MESSAGING_TOPIC)); this.retryStrategy = RetryStrategies.timeLimit( 20, TimeUnit.SECONDS, RetryStrategies.exponentialDelay(10, 200, TimeUnit.MILLISECONDS)); this.messagingContext = messagingContext; }
@Inject DefaultAuditPublisher(CConfiguration cConf, MessagingService messagingService) { this.messagingService = messagingService; this.auditTopic = NamespaceId.SYSTEM.topic(cConf.get(Constants.Audit.TOPIC)); this.retryStrategy = RetryStrategies.timeLimit( cConf.getLong(Constants.Audit.PUBLISH_TIMEOUT_MS), TimeUnit.MILLISECONDS, RetryStrategies.exponentialDelay(10, 200, TimeUnit.MILLISECONDS)); }
@Inject DefaultAuditPublisher(CConfiguration cConf, MessagingService messagingService) { this.messagingService = messagingService; this.auditTopic = NamespaceId.SYSTEM.topic(cConf.get(Constants.Audit.TOPIC)); this.retryStrategy = RetryStrategies.timeLimit( cConf.getLong(Constants.Audit.PUBLISH_TIMEOUT_MS), TimeUnit.MILLISECONDS, RetryStrategies.exponentialDelay(10, 200, TimeUnit.MILLISECONDS)); }
/** * Persists running state to the {@link RemoteRuntimeDataset}. */ private void persistRunningState(ProgramRunId programRunId, ProgramOptions programOptions) { // Only retry for a max of 5 seconds. If it still failed to persist, it will fail to launch the program. RetryStrategy retryStrategy = RetryStrategies.timeLimit(5L, TimeUnit.SECONDS, RetryStrategies.exponentialDelay(100L, 1000L, TimeUnit.MILLISECONDS)); Retries.runWithRetries(() -> Transactionals.execute(transactional, context -> { RemoteRuntimeDataset dataset = RemoteRuntimeDataset.create(context, datasetFramework); dataset.write(programRunId, programOptions); }, RetryableException.class), retryStrategy); }
/** * Persists running state to the {@link RemoteRuntimeDataset}. */ private void persistRunningState(ProgramRunId programRunId, ProgramOptions programOptions) { // Only retry for a max of 5 seconds. If it still failed to persist, it will fail to launch the program. RetryStrategy retryStrategy = RetryStrategies.timeLimit(5L, TimeUnit.SECONDS, RetryStrategies.exponentialDelay(100L, 1000L, TimeUnit.MILLISECONDS)); Retries.runWithRetries(() -> Transactionals.execute(transactional, context -> { RemoteRuntimeDataset dataset = RemoteRuntimeDataset.create(context, datasetFramework); dataset.write(programRunId, programOptions); }, RetryableException.class), retryStrategy); }
RetryStrategy strategy = RetryStrategies.timeLimit(3, TimeUnit.SECONDS, RetryStrategies.fixDelay(200, TimeUnit.MILLISECONDS)); int port = Retries.callWithRetries(() -> {
RetryStrategy strategy = RetryStrategies.timeLimit(3, TimeUnit.SECONDS, RetryStrategies.fixDelay(200, TimeUnit.MILLISECONDS)); int port = Retries.callWithRetries(() -> {
private String updateKafkaBrokerList(CConfiguration cConf, BrokerService brokerService) { String brokerList = Retries.callWithRetries( brokerService::getBrokerList, RetryStrategies.timeLimit(10, TimeUnit.SECONDS, RetryStrategies.exponentialDelay(100, 2000, TimeUnit.MILLISECONDS)) ); for (String param : kafkaBrokerListParams) { cConf.set(param, brokerList); } return brokerList; }
return RetryStrategies.limit(maxRetries, RetryStrategies.timeLimit(maxTimeSecs, TimeUnit.SECONDS, baseStrategy));
return RetryStrategies.limit(maxRetries, RetryStrategies.timeLimit(maxTimeSecs, TimeUnit.SECONDS, baseStrategy));