question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

java.lang.StackOverflowError - spring-cloud-starter-aws-secrets-manager-config : 2.4.1

See original GitHub issue

Application is going into inifinte loop upon execution.

I am trying a fetch secret with spring-cloud-starter-aws-secrets-manager-config dependency.

I am setting the AWS_ROLE_ARN=arn:aws:iam::xaxsaxsadsa:role/databricks_nss

 <dependency>
            <groupId>io.awspring.cloud</groupId>
            <artifactId>spring-cloud-starter-aws-secrets-manager-config</artifactId>
            <version>${spring.cloud.secrets.manager.config.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>aws-java-sdk-core</artifactId>
                    <groupId>com.amazonaws</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk-sts</artifactId>
            <version>1.12.215</version>
        </dependency>
java.lang.StackOverflowError
	at java.util.LinkedList$ListItr.<init>(LinkedList.java:879)
	at java.util.LinkedList.listIterator(LinkedList.java:868)
	at java.util.AbstractList.listIterator(AbstractList.java:299)
	at java.util.AbstractSequentialList.iterator(AbstractSequentialList.java:239)
	at com.amazonaws.auth.AWSCredentialsProviderChain.getCredentials(AWSCredentialsProviderChain.java:115)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.getCredentialsFromContext(AmazonHttpClient.java:1266)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.runBeforeRequestHandlers(AmazonHttpClient.java:842)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:792)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:779)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:753)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:713)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:695)
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:559)
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:539)
	at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.doInvoke(AWSSecurityTokenServiceClient.java:1684)
	at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.invoke(AWSSecurityTokenServiceClient.java:1651)
	at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.invoke(AWSSecurityTokenServiceClient.java:1640)
	at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.executeAssumeRole(AWSSecurityTokenServiceClient.java:498)
	at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.assumeRole(AWSSecurityTokenServiceClient.java:467)
	at com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.newSession(STSAssumeRoleSessionCredentialsProvider.java:348)
	at com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.access$000(STSAssumeRoleSessionCredentialsProvider.java:44)
	at com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider$1.call(STSAssumeRoleSessionCredentialsProvider.java:93)
	at com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider$1.call(STSAssumeRoleSessionCredentialsProvider.java:90)
	at com.amazonaws.auth.RefreshableTask.refreshValue(RefreshableTask.java:295)
	at com.amazonaws.auth.RefreshableTask.blockingRefresh(RefreshableTask.java:251)
	at com.amazonaws.auth.RefreshableTask.getValue(RefreshableTask.java:192)
	at com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.getCredentials(STSAssumeRoleSessionCredentialsProvider.java:320)
	at com.amazonaws.auth.STSAssumeRoleSessionCredentialsProvider.getCredentials(STSAssumeRoleSessionCredentialsProvider.java:43)
	at com.amazonaws.auth.profile.internal.securitytoken.STSProfileCredentialsServiceProvider.getCredentials(STSProfileCredentialsServiceProvider.java:71)
	at com.amazonaws.auth.WebIdentityTokenCredentialsProvider.getCredentials(WebIdentityTokenCredentialsProvider.java:76)
	at com.amazonaws.auth.AWSCredentialsProviderChain.getCredentials(AWSCredentialsProviderChain.java:117)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.getCredentialsFromContext(AmazonHttpClient.java:1266)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.runBeforeRequestHandlers(AmazonHttpClient.java:842)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:792)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:779)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:753)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:713)
	at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:695)
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:559)
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:539)

log4j-active (4).txt

Issue Analytics

  • State:closed
  • Created a year ago
  • Comments:9 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
maciejwalkowiakcommented, May 18, 2022

Yes, if its not optional and its not able fetch secrets, application should fail to start

0reactions
DineshNOcommented, May 17, 2022

Hi @maciejwalkowiak , Thanks for the response.

It works .but using spring-cloud-starter-aws-secrets-manager-config and application fails to start as its not able to fetch the creds .In this case logs are not printed.So as a workaround ,If i use as below with “optional” :

spring.config.import=optional:aws-secretsmanager:service/***

Then logs are printed as the following (Deferred):

2022-05-17T14:30:33,237 INFO [main] org.springframework.boot.logging.DeferredLog: Loading secrets from AWS Secret Manager secret with name: service//stage-v2/bi/db/token, optional: true 2022-05-17T14:30:33,237 WARN [main] org.springframework.boot.logging.DeferredLog: Unable to load AWS secret from service//stage-v2/bi/db/token. Unable to load AWS credentials from any provider in the chain: [EnvironmentVariableCredentialsProvider: Unable to load AWS credentials from environment variables (AWS_ACCESS_KEY_ID (or AWS_ACCESS_KEY) and AWS_SECRET_KEY (or AWS_SECRET_ACCESS_KEY)), SystemPropertiesCredentialsProvider: Unable to load AWS credentials from Java system properties (aws.accessKeyId and aws.secretKey), WebIdentityTokenCredentialsProvider: You must specify a value for roleArn and roleSessionName, com.amazonaws.auth.profile.ProfileCredentialsProvider@46c00568: The security token included in the request is expired (Service: AWSSecurityTokenService; Status Code: 403; Error Code: ExpiredToken; Request ID: e4c83713-63cb-45b9-abe4-893a56cedd60; Proxy: null), com.amazonaws.auth.EC2ContainerCredentialsProviderWrapper@1869f114: Failed to connect to service endpoint: ]

is this the expected behaviour ?

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to Fix java.lang.StackOverflowError in Java - Rollbar
The java.lang.StackOverflowError is a runtime error which points to serious problems that cannot be caught by an application. The java.lang.
Read more >
I get stackOverflowError in spring security test - Stack Overflow
I opened an issue on spring github and it was reported as a bug that will be fixed by spring framework version 5.3.24....
Read more >
AWSSecurityTokenServiceClient.doInvoke goes into infinite loop
It goes into infinite loop resulting into stackOverflowError. Getting an infinite loop error. java.lang.StackOverflowError at java.util.
Read more >
The StackOverflowError in Java - Baeldung
Learn how one of Java's most common errors - StackOverflowError - occurs, and how to resolve it.
Read more >
StackOverflowError after node connect, java api - Elastic Discuss
Hi all, I am using ES 0.12.1, java api, local gw, JRockit 1.6, and I am seeing from time to time in my...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found