SAP / cloud-sdk-java

Use the SAP Cloud SDK for Java to reduce development effort when building applications on SAP Business Technology Platform that communicate with SAP solutions and services such as SAP S/4HANA Cloud, SAP SuccessFactors, and many others.
Apache License 2.0
21 stars 9 forks source link

Destination Not being fetched Correctly after cds and cloud version upgrades #479

Open I547884 opened 1 week ago

I547884 commented 1 week ago

Hi Team,

We have a JAVA based CAP application and we had migrated to DwC last year. As part of recent security version upgrade we have upgraded the cds , dwc, cloudsdk and spring-boot versions and we are facing some issue in fetching the destination call. Every few days the destination call results in error and gets automatically fixed after we restart the app.

Please find logs acm-fp-contracts-srv-018f76b0-9a2e-6d49-705c-0a697a709f59-2024-06-21 04_16_37.534+0000.txt image

For More details please refer below ticket https://github.tools.sap/cap/issues/issues/16192

cgaillydetaurines commented 1 week ago

Hi Colleagues, For information we are getting similar issue, we got an error trying fetching a destination. Reloading the web page may sometime help to solve the issue.

image

BR, Clément.

KavithaSiva commented 6 days ago

As commented by Matthias in the CAP issue could you please create a try/catch around the destination retrieval and whenever this error is thrown print out the result of:

DefaultServiceBindingAccessor.getInstance()
                .getServiceBindings();
ServiceBindingAccessor.getInstancesViaServiceLoader();

to reveal the bindings and the implementations that loaded them.

cgaillydetaurines commented 5 days ago

The error message is: class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServicesingleDestResilience' is OPEN and does not permit further calls

The call stack:

com.sap.cloud.sdk.cloudplatform.connectivity.exception.DestinationAccessException: Failed to get destination., at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.resilientCall(DestinationService.java:354), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.lambda$loadAndParseDestination$1(DestinationService.java:137), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationRetrievalStrategyResolver.lambda$prepareSupplier$5(DestinationRetrievalStrategyResolver.java:193), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationRetrieval.get(DestinationRetrieval.java:26), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.loadAndParseDestination(DestinationService.java:145), at com.sap.cloud.sdk.cloudplatform.connectivity.GetOrComputeSingleDestinationCommand.lambda$prepareCommand$0(GetOrComputeSingleDestinationCommand.java:70), at io.vavr.control.Try.of(Try.java:75), at io.vavr.control.Try.ofSupplier(Try.java:92), at com.sap.cloud.sdk.cloudplatform.connectivity.GetOrComputeSingleDestinationCommand.execute(GetOrComputeSingleDestinationCommand.java:157), at io.vavr.control.Try.flatMapTry(Try.java:490), at io.vavr.control.Try.flatMap(Try.java:472), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService$Cache.getOrComputeDestination(DestinationService.java:850), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.tryGetDestination(DestinationService.java:128), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationLoader.tryGetDestination(DestinationLoader.java:37), at com.sap.cloud.conso.managers.GlobalParameterManager.getGlobalParameters(GlobalParameterManager.java:49), at com.sap.cloud.conso.routing.SmartRouteController.redirectToPackage(SmartRouteController.java:86), at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method), at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source), at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source), at java.base/java.lang.reflect.Method.invoke(Unknown Source), at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255), at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188), at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118), at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926), at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831), at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87), at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089), at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979), at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014), at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903), at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564), at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885), at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.sdk.cloudplatform.servletjakarta.RequestAccessorFilter.lambda$doFilter$0(RequestAccessorFilter.java:60), at com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutor.lambda$execute$1(ThreadContextExecutor.java:264), at com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutor.call(ThreadContextExecutor.java:297), at com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutor.execute(ThreadContextExecutor.java:263), at com.sap.cloud.sdk.cloudplatform.servletjakarta.RequestAccessorFilter.doFilter(RequestAccessorFilter.java:60), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.conso.security.GrdcServletFilter.doFilter(GrdcServletFilter.java:41), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.conso.security.SecurityServletFilter.doFilter(SecurityServletFilter.java:61), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:86), at com.sap.hcp.cf.logging.servlet.filter.GenerateRequestLogFilter.doFilter(GenerateRequestLogFilter.java:95), at com.sap.hcp.cf.logging.servlet.filter.GenerateRequestLogFilter.doFilterRequest(GenerateRequestLogFilter.java:82), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter.doFilter(CompositeFilter.java:59), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108), at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231), at org.springframework.security.web.ObservationFilterChainDecorator$FilterObservation$SimpleFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:479), at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:340), at org.springframework.security.web.ObservationFilterChainDecorator.lambda$wrapSecured$0(ObservationFilterChainDecorator.java:82), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:128), at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126), at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131), at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.oauth2.server.resource.web.authentication.BearerTokenAuthenticationFilter.doFilterInternal(BearerTokenAuthenticationFilter.java:145), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107), at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90), at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82), at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233), at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191), at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113), at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195), at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113), at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74), at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230), at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352), at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:109), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:124), at org.springframework.boot.web.servlet.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:99), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:117), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167), at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90), at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482), at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115), at com.sap.xs.java.valves.ErrorReportValve.invoke(ErrorReportValve.java:68), at ch.qos.logback.access.tomcat.LogbackValve.invoke(LogbackValve.java:267), at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74), at com.sap.xs.jdbc.datasource.valve.JDBCValve.invoke(JDBCValve.java:62), at com.sap.xs.security.TenantIdValve.invoke(TenantIdValve.java:33), at com.sap.xs.security.UserInfoValve.invoke(UserInfoValve.java:18), at com.sap.xs.statistics.tomcat.valve.RequestTracingValve.invoke(RequestTracingValve.java:43), at com.sap.xs.logging.catalina.RuntimeInfoValve.invoke(RuntimeInfoValve.java:42), at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:731), at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344), at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:389), at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63), at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896), at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741), at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52), at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190), at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659), at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63), at java.base/java.lang.Thread.run(Unknown Source), Caused by: com.sap.cloud.sdk.cloudplatform.resilience.ResilienceRuntimeException: io.github.resilience4j.circuitbreaker.CallNotPermittedException: CircuitBreaker 'class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServicesingleDestResilience' is OPEN and does not permit further calls, at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$3(Resilience4jDecorationStrategy.java:195), at io.vavr.control.Try.onFailure(Try.java:659), at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$4(Resilience4jDecorationStrategy.java:194), at io.vavr.control.Try.of(Try.java:75), at io.vavr.control.Try.ofCallable(Try.java:105), at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateSupplier$1(Resilience4jDecorationStrategy.java:160), at com.sap.cloud.sdk.cloudplatform.resilience.ResilienceDecorationStrategy.executeSupplier(ResilienceDecorationStrategy.java:103), at com.sap.cloud.sdk.cloudplatform.resilience.ResilienceDecorator.executeSupplier(ResilienceDecorator.java:201), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.resilientCall(DestinationService.java:348), ... 200 more, Caused by: io.github.resilience4j.circuitbreaker.CallNotPermittedException: CircuitBreaker 'class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServicesingleDestResilience' is OPEN and does not permit further calls, at io.github.resilience4j.circuitbreaker.CallNotPermittedException.createCallNotPermittedException(CallNotPermittedException.java:48), at io.github.resilience4j.circuitbreaker.internal.CircuitBreakerStateMachine$OpenState.acquirePermission(CircuitBreakerStateMachine.java:752), at io.github.resilience4j.circuitbreaker.internal.CircuitBreakerStateMachine.acquirePermission(CircuitBreakerStateMachine.java:206), at io.github.resilience4j.circuitbreaker.CircuitBreaker.lambda$decorateCallable$4(CircuitBreaker.java:165), at io.vavr.control.Try.of(Try.java:75), at io.vavr.control.Try.ofCallable(Try.java:105), at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$4(Resilience4jDecorationStrategy.java:190), ... 206 more

cgaillydetaurines commented 5 days ago

I tried with disabling the cache (DestinationService.Cache.disable();) , but got similar issue:

com.sap.cloud.sdk.cloudplatform.connectivity.exception.DestinationAccessException: Failed to get destination., at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.resilientCall(DestinationService.java:354), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.lambda$loadAndParseDestination$1(DestinationService.java:137), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationRetrievalStrategyResolver.lambda$prepareSupplier$5(DestinationRetrievalStrategyResolver.java:193), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationRetrieval.get(DestinationRetrieval.java:26), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.loadAndParseDestination(DestinationService.java:145), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService$Cache.lambda$getOrComputeDestination$0(DestinationService.java:825), at io.vavr.control.Try.of(Try.java:75), at io.vavr.control.Try.ofSupplier(Try.java:92), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService$Cache.getOrComputeDestination(DestinationService.java:825), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.tryGetDestination(DestinationService.java:128), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationLoader.tryGetDestination(DestinationLoader.java:37), at com.sap.cloud.conso.managers.GlobalParameterManager.getGlobalParameters(GlobalParameterManager.java:50), at com.sap.cloud.conso.extensions.EnterDataExtension.getGlobalParameters(EnterDataExtension.java:227), at com.sap.cds.services.impl.handlerregistry.HandlerRegistryTools$DescribedHandler.process(HandlerRegistryTools.java:165), at com.sap.cds.services.impl.ServiceImpl.lambda$createOnHandlerChain$4(ServiceImpl.java:269), at com.sap.cds.services.impl.ServiceImpl.dispatch(ServiceImpl.java:236), at com.sap.cds.services.impl.ServiceImpl.emit(ServiceImpl.java:177), at com.sap.cds.services.ServiceDelegator.emit(ServiceDelegator.java:33), at com.sap.cds.adapter.odata.v2.processors.CdsProcessor.function(CdsProcessor.java:468), at com.sap.cds.adapter.odata.v2.processors.CdsProcessor.lambda$processInRequestContext$1(CdsProcessor.java:122), at com.sap.cds.services.impl.runtime.RequestContextRunnerImpl.run(RequestContextRunnerImpl.java:272), at com.sap.cds.adapter.odata.v2.processors.CdsProcessor.processInRequestContext(CdsProcessor.java:119), at com.sap.cds.adapter.odata.v2.processors.CdsProcessor.lambda$processRequest$0(CdsProcessor.java:111), at com.sap.cds.services.impl.runtime.ChangeSetContextRunnerImpl.open(ChangeSetContextRunnerImpl.java:62), at com.sap.cds.services.impl.runtime.ChangeSetContextRunnerImpl.run(ChangeSetContextRunnerImpl.java:41), at com.sap.cds.adapter.odata.v2.processors.CdsProcessor.processRequest(CdsProcessor.java:110), at com.sap.cds.adapter.odata.v2.processors.OlingoProcessor.executeFunctionImport(OlingoProcessor.java:315), at org.apache.olingo.odata2.core.Dispatcher.dispatch(Dispatcher.java:200), at org.apache.olingo.odata2.core.ODataRequestHandler.handle(ODataRequestHandler.java:131), at org.apache.olingo.odata2.core.batch.BatchHandlerImpl.handleBatchPart(BatchHandlerImpl.java:79), at com.sap.cds.adapter.odata.v2.processors.OlingoProcessor.executeBatch(OlingoProcessor.java:431), at org.apache.olingo.odata2.core.Dispatcher.dispatch(Dispatcher.java:190), at org.apache.olingo.odata2.core.ODataRequestHandler.handle(ODataRequestHandler.java:131), at org.apache.olingo.odata2.core.servlet.ODataServlet.handleRequest(ODataServlet.java:216), at org.apache.olingo.odata2.core.servlet.ODataServlet.handle(ODataServlet.java:118), at org.apache.olingo.odata2.core.servlet.ODataServlet.service(ODataServlet.java:85), at com.sap.cds.adapter.odata.v2.CdsODataV2Servlet.lambda$service$0(CdsODataV2Servlet.java:85), at com.sap.cds.services.impl.runtime.RequestContextRunnerImpl.lambda$run$3(RequestContextRunnerImpl.java:213), at com.sap.cds.services.impl.runtime.RequestContextRunnerImpl.run(RequestContextRunnerImpl.java:272), at com.sap.cds.services.impl.runtime.RequestContextRunnerImpl.run(RequestContextRunnerImpl.java:212), at com.sap.cds.adapter.odata.v2.CdsODataV2Servlet.service(CdsODataV2Servlet.java:80), at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658), at com.sap.cds.framework.spring.config.adapter.ServletAdapterRestController.handleRequest(ServletAdapterRestController.java:30), at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:51), at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089), at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979), at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014), at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914), at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590), at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885), at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.sdk.cloudplatform.servletjakarta.RequestAccessorFilter.lambda$doFilter$0(RequestAccessorFilter.java:60), at com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutor.lambda$execute$1(ThreadContextExecutor.java:264), at com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutor.call(ThreadContextExecutor.java:297), at com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutor.execute(ThreadContextExecutor.java:263), at com.sap.cloud.sdk.cloudplatform.servletjakarta.RequestAccessorFilter.doFilter(RequestAccessorFilter.java:60), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.conso.security.GrdcServletFilter.doFilter(GrdcServletFilter.java:41), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.conso.security.SecurityServletFilter.doFilter(SecurityServletFilter.java:61), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:86), at com.sap.hcp.cf.logging.servlet.filter.GenerateRequestLogFilter.doFilter(GenerateRequestLogFilter.java:95), at com.sap.hcp.cf.logging.servlet.filter.GenerateRequestLogFilter.doFilterRequest(GenerateRequestLogFilter.java:82), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilterRequest(AbstractLoggingFilter.java:47), at com.sap.hcp.cf.logging.servlet.filter.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:20), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter$InternalFilterChain.doFilter(CompositeFilter.java:84), at com.sap.hcp.cf.logging.servlet.filter.CompositeFilter.doFilter(CompositeFilter.java:59), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at com.sap.cloud.conso.config.RateLimiterFilter.doFilter(RateLimiterFilter.java:70), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108), at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231), at org.springframework.security.web.ObservationFilterChainDecorator$FilterObservation$SimpleFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:479), at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:340), at org.springframework.security.web.ObservationFilterChainDecorator.lambda$wrapSecured$0(ObservationFilterChainDecorator.java:82), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:128), at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126), at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131), at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.oauth2.server.resource.web.authentication.BearerTokenAuthenticationFilter.doFilterInternal(BearerTokenAuthenticationFilter.java:145), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107), at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90), at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82), at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240), at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323), at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224), at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137), at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233), at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191), at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113), at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195), at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113), at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74), at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230), at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352), at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:109), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:124), at org.springframework.boot.web.servlet.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:99), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:117), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201), at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116), at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164), at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140), at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167), at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90), at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482), at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115), at com.sap.xs.java.valves.ErrorReportValve.invoke(ErrorReportValve.java:68), at ch.qos.logback.access.tomcat.LogbackValve.invoke(LogbackValve.java:267), at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74), at com.sap.xs.jdbc.datasource.valve.JDBCValve.invoke(JDBCValve.java:62), at com.sap.xs.security.TenantIdValve.invoke(TenantIdValve.java:33), at com.sap.xs.security.UserInfoValve.invoke(UserInfoValve.java:18), at com.sap.xs.statistics.tomcat.valve.RequestTracingValve.invoke(RequestTracingValve.java:43), at com.sap.xs.logging.catalina.RuntimeInfoValve.invoke(RuntimeInfoValve.java:42), at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:731), at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344), at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:389), at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63), at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896), at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741), at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52), at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190), at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659), at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63), at java.base/java.lang.Thread.run(Unknown Source), Caused by: com.sap.cloud.sdk.cloudplatform.resilience.ResilienceRuntimeException: java.util.concurrent.TimeoutException: TimeLimiter 'class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServicesingleDestResilience' recorded a timeout exception., at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$3(Resilience4jDecorationStrategy.java:195), at io.vavr.control.Try.onFailure(Try.java:659), at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$4(Resilience4jDecorationStrategy.java:194), at io.vavr.control.Try.of(Try.java:75), at io.vavr.control.Try.ofCallable(Try.java:105), at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateSupplier$1(Resilience4jDecorationStrategy.java:160), at com.sap.cloud.sdk.cloudplatform.resilience.ResilienceDecorationStrategy.executeSupplier(ResilienceDecorationStrategy.java:103), at com.sap.cloud.sdk.cloudplatform.resilience.ResilienceDecorator.executeSupplier(ResilienceDecorator.java:201), at com.sap.cloud.sdk.cloudplatform.connectivity.DestinationService.resilientCall(DestinationService.java:348), ... 221 more, Caused by: java.util.concurrent.TimeoutException: TimeLimiter 'class com.sap.cloud.sdk.cloudplatform.connectivity.DestinationServicesingleDestResilience' recorded a timeout exception., at java.base/java.util.concurrent.FutureTask.get(Unknown Source), 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 io.vavr.control.Try.of(Try.java:75), at io.vavr.control.Try.ofCallable(Try.java:105), at com.sap.cloud.sdk.cloudplatform.resilience4j.Resilience4jDecorationStrategy.lambda$decorateCallable$4(Resilience4jDecorationStrategy.java:190), ... 227 more

KavithaSiva commented 4 days ago

As the exception stack traces indicate timeout and multiple failures while fetching from the destination service, could you please try increasing the timeout configuration for the timelimiter by:

import static com.sap.cloud.sdk.cloudplatform.resilience.ResilienceConfiguration.TimeLimiterConfiguration;

DestinationService service =
    DestinationService
        .builder()
        .withTimeLimiterConfiguration(TimeLimiterConfiguration.of(Duration.ofSeconds(30)))
        .build();

DestinationAccessor.prependDestinationLoader(service);

Do this once during application startup and all your subsequent calls to destination service should have an increased timeout value.