Skip to content

Intermittent DestinationAccessException : Caused by: java.util.concurrent.TimeoutException #1289

Description

@ktesnim

Describe the Bug

We are receiving intermittent com.sap.cloud.sdk.cloudplatform.connectivity.exception.DestinationAccessException: Failed to get destination.
The exception is issued from the usage of getDestinationProperties(@nonnull String destinationName) method

Steps to Reproduce

There is no special scenario to reproduce the issue. The code is related to the get of destination details.

Expected Behavior

The destination details should be retrieved successfully

Screenshots

No response

Used Versions

  • SAP Cloud SDK version: 5.33.0

Code Examples

com.sap.cloud.sdk.cloudplatform.connectivity.exception.DestinationAccessException: Failed to get destination.
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.resilientCall(DestinationService.java:416)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.loadAndParseAllDestinations(DestinationService.java:339)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationRetrievalStrategyResolver.lambda$prepareSupplierAllDestinations$9(DestinationRetrievalStrategyResolver.java:272)
	at io.vavr.control.Try.mapTry(Try.java:692)
	at io.vavr.control.Try.map(Try.java:634)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.getAllDestinationsByRetrievalStrategy(DestinationService.java:329)
	at com.sap.cloud.sdk.cloudplatform.connectivity.GetOrComputeAllDestinationsCommand.lambda$prepareCommand$0(GetOrComputeAllDestinationsCommand.java:40)
	at com.sap.cloud.sdk.cloudplatform.connectivity.GetOrComputeAllDestinationsCommand.execute(GetOrComputeAllDestinationsCommand.java:71)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService$Cache.getOrComputeAllDestinations(DestinationService.java:946)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.getAllDestinationProperties(DestinationService.java:257)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.getAllDestinationProperties(DestinationService.java:232)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.getDestinationProperties(DestinationService.java:279)
	....
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeOnMessage(KafkaMessageListenerContainer.java:2940)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeOnMessage(KafkaMessageListenerContainer.java:2914)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeRecordListener(KafkaMessageListenerContainer.java:2826)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeWithRecords(KafkaMessageListenerContainer.java:2663)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeRecordListener(KafkaMessageListenerContainer.java:2552)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeListener(KafkaMessageListenerContainer.java:2201)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeIfHaveRecords(KafkaMessageListenerContainer.java:1555)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.pollAndInvoke(KafkaMessageListenerContainer.java:1493)
	at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.run(KafkaMessageListenerContainer.java:1362)
	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1825)
	at io.opentelemetry.javaagent.bootstrap.executors.ContextPropagatingRunnable.run(ContextPropagatingRunnable.java:37)
	at java.base/java.lang.Thread.run(Thread.java:1474)
Caused by: com.sap.cloud.sdk.cloudplatform.resilience.ResilienceRuntimeException: java.util.concurrent.TimeoutException: TimeLimiter 'class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServiceallDestResilience' recorded a timeout exception.
	at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$3(Resilience4jDecorationStrategy.java:194)
	at io.vavr.control.Try.onFailure(Try.java:718)
	at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$4(Resilience4jDecorationStrategy.java:190)
	at io.vavr.control.Try.of(Try.java:81)
	at io.vavr.control.Try.ofCallable(Try.java:117)
	at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateSupplier$1(Resilience4jDecorationStrategy.java:156)
	at com.sap.cloud.sdk.cloudplatform.resilience.ResilienceDecorationStrategy.executeSupplier(ResilienceDecorationStrategy.java:99)
	at com.sap.cloud.sdk.cloudplatform.resilience.ResilienceDecorator.executeSupplier(ResilienceDecorator.java:197)
	at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.resilientCall(DestinationService.java:410)
	... 82 more
Caused by: java.util.concurrent.TimeoutException: TimeLimiter 'class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServiceallDestResilience' recorded a timeout exception.
	at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:206)
	at io.github.resilience4j.timelimiter.internal.TimeLimiterImpl.lambda$decorateFutureSupplier$0(TimeLimiterImpl.java:46)
	at io.github.resilience4j.circuitbreaker.CircuitBreaker.lambda$decorateCallable$4(CircuitBreaker.java:168)
	at com.sap.cloud.sdk.cloudplatform.resilience4j.DefaultCircuitBreakerProvider.lambda$decorateCallable$2(DefaultCircuitBreakerProvider.java:84)
	at io.vavr.control.Try.of(Try.java:81)
	at io.vavr.control.Try.ofCallable(Try.java:117)
	at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$4(Resilience4jDecorationStrategy.java:186)
	... 88 more

Stack Trace

No response

Log File

Log file ...

Affected Development Phase

Getting Started

Impact

No Impact

Timeline

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions