Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(bug) Segfault when trying to connect to Kinesis via EKS IRSA in 0.15.9 #558

Open
joshuabaird opened this issue Jan 29, 2024 · 6 comments
Open
Labels

Comments

@joshuabaird
Copy link

joshuabaird commented Jan 29, 2024

Running the producer in an EKS pod using IRSA that allows access to Kinesis.

The producer segfaults with this error:

Description: Segmentation fault
Signal: SIGSEGV Code: (1) Address: 18446744073709551608

The thought was that it was swallowing an error related to the inability to authenticate to the Kinesis endpoint. I have verified authorization is correct by using the AWS CLI on the container (which uses the EKS IRSA credential chain). I don't see any "access denied" API calls to Kinesis in Cloudtrail either. I have confirmed there is no network traffic from the container to Kinesis or Cloudwatch.

I also bumped producer logging up to TRACE, but don't see anything helpful.

Any ideas on how to further troubleshoot this?

Thanks!

@joshuabaird joshuabaird changed the title Segfault when trying to connect to Kinesis via EKS IRSA (bug) Segfault when trying to connect to Kinesis via EKS IRSA in 0.15.9 Jan 30, 2024
@joshuabaird
Copy link
Author

joshuabaird commented Jan 30, 2024

After debugging and tips from this SO, it seems like there is a bug in v0.15.9 that causes the segfault. Reverting to v0.15.8 fixes the issue.

Using this to build the KPL config:

    private static WebIdentityTokenCredentialsProvider webIdentityTokenCredentialsProvider =
        WebIdentityTokenCredentialsProvider.builder()
            .roleArn(System.getenv("AWS_ROLE_ARN"))
            .roleSessionName(UUID.randomUUID().toString())
            .webIdentityTokenFile(System.getenv("AWS_WEB_IDENTITY_TOKEN_FILE"))
            .build();       

    private static final KinesisProducerConfiguration kplConfig = new KinesisProducerConfiguration()
                                                                      .setAggregationEnabled(false)
                                                                      .setRegion("us-east-1")
                                                                      .setLogLevel("trace")
                                                                      .setCredentialsProvider(webIdentityTokenCredentialsProvider);

I see that 0.15.10 is available (not sure if it fixes the issue or not) -- but it hasn't yet been released to Maven Central. It does look like the only fix in 0.15.10 was related to something that was introduced in 0.15.9, though.

I have opened AWS case #170656583201515 and provided debug/trace logs.

@SigmaQ
Copy link

SigmaQ commented Jan 30, 2024

I'm having the same problem, thanks for the details

@elrob
Copy link

elrob commented Feb 5, 2024

Same problem here.

@yinghong
Copy link

yinghong commented Feb 7, 2024

Yes, we ran into the same issue. pin to 0.15.8 for now. Thanks!

@pcolazurdo
Copy link

pcolazurdo commented Feb 22, 2024

Same issue here (not IRSA related, though) , running on Amazon Linux 2023 and openjdk 21.0.2 2024-01-16

@madorb
Copy link

madorb commented Jun 26, 2024

Love the amazing comms from AWS on this! :-\

Is this expected to be fixed in 0.15.10?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

7 participants