-
Notifications
You must be signed in to change notification settings - Fork 893
Segmentation fault in aws_event_loop_group_get_next_loop+0x12 #6021
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
Comments
Can you provide some additional info so we can have more context?
|
Another question: do you have the same code running in a different JDK version? Does it throw SIGSEGV too? We're trying to narrow down if this can be a problem with JDK 8. |
Hi @debora-ito , we only have the code running in JDK 8 and not in any other version of the JDK. To answer your previous questions, following is a small snippet of how we initialize our async s3 client and the snippet used to delete an object s3CrtAsyncClientBuilder = S3AsyncClient.crtBuilder()
.httpConfiguration(httpConfiguration)
.credentialsProvider(credentialsProvider)
.forcePathStyle(pathStyleAccess)
.checksumValidationEnabled(false)
.minimumPartSizeInBytes(CLOUD_ADAPTER_MULTIPART_COPY_PARTSIZE)
.thresholdInBytes(CLOUD_ADAPTER_MULTIPART_COPY_THRESHOLD);
if (adapterConfiguration.getNumThreads() != null) {
s3CrtAsyncClientBuilder.maxConcurrency(adapterConfiguration.getNumThreads());
}
s3CrtAsyncClientBuilder.crossRegionAccessEnabled(targetConfiguration.getStorageType().hasRegions());
s3CrtAsyncClientBuilder.region(regionType);
s3CrtAsyncClientBuilder.endpointOverride(endpointOverride);
public void connect() {
if (s3AsyncClient == null) {
this.s3AsyncClient = s3CrtAsyncClientBuilder.build();
this.transferManager = getTransferManager(s3AsyncClient);
this.lastConnectionTimeMillis = System.currentTimeMillis();
}
if (s3Client == null) {
this.s3Client = s3ClientBuilder.build();
}
if (s3Presigner == null) {
this.s3Presigner = s3PresignerBuilder.s3Client(s3Client).build();
}
if (stsClient == null) {
this.stsClient = stsClientBuilder.build();
}
} Some of the configuration as part of the crt builder is conditional based on what configuration is used but this is all of it. DeleteObject method public void deleteObject(String key) throws CloudException {
try {
DeleteObjectRequest request = DeleteObjectRequest.builder()
.bucket(bucketName)
.key(key)
.build();
s3AsyncClient.deleteObject(request).get();
} catch (ExecutionException e) {
throwCloudException(e, key, "deleteObject");
} catch (Exception e) {
log().error("Unable to delete object for key={}; bucket={}", key, bucketName, e);
throw new CloudException(e);
}
} |
Describe the bug
We are seeing the following segmentation fault when using the S3AsyncClient built using S3CrtAsyncClientBuilder to delete an object on S3.
Stack trace from hs_err_pid.log file
Regression Issue
Expected Behavior
No segmentation fault
Current Behavior
This leads to the crash of the JVM
Reproduction Steps
Not sure if it is reproducible. Attaching the entire hs_err_pid.log file. The issue was observed when the sdk was running as part of a jar on a Rocky Linux VM.
hs_err_pid_cloud5886_294274.log
Possible Solution
No response
Additional Information/Context
No response
AWS Java SDK version used
2.25.26
JDK version used
openjdk version "1.8.0_432"
Operating System and version
Rocky Linux release 9.5 (Blue Onyx)
The text was updated successfully, but these errors were encountered: