Skip to content

Checksum is getting included in the file content while using the self hosted flash storage "Flash Blade S200 NVMe 4.5.7" #6192

Open
@snowsagarshirsath

Description

@snowsagarshirsath

Describe the bug

Hello,

We have self hosted s3 storage with pure flash blades with Version "Flash Blade S200 NVMe 4.5.7".

There is a Java Program which uses the software.amazon.awssdk.s3
https://mvnrepository.com/artifact/software.amazon.awssdk/s3

While uploading any file through this client s3, the checksum or payload of file is getting included in the file content, currently we have used 2.29.52 version and excluded the checksum which works fine, but later versions does not work, looks like adding checksum is enforced somewhere, this leads to file corruption issue.

Sample code:

        putObj = PutObjectRequest.builder()
                .bucket(S3ClientSingleton.bucket)

// .checksumAlgorithm(ChecksumAlgorithm.SHA256)
.key(String.valueOf(destinationS3Path))
.metadata(metadata)
.build();

        return s3client.putObject(putObj, AsyncRequestBody.fromFile(sourceFilePath)).whenComplete((response, error) -> {
            stopWatch.stop();
            long timeTaken = stopWatch.getTime();

            if (error != null) {
                fLogger.severe(() -> String.format("Failed to upload file to S3 %s, error: %s",
                        destinationS3Path, error.getMessage()));
                throw new CompletionException(error);
            } else {
                fLogger.info(() -> String.format(
                        "Uploaded Artifact to S3 Finished, s3_upload_time_taken=%dms, file: %s etag: %s",
                        timeTaken,
                        sourceFilePath,
                        response.eTag()
                ));
            }
        });

Please help us to get it fixed or find the root cause.

Regression Issue

  • Select this option if this issue appears to be a regression.

Expected Behavior

With the latest aws s3 sdk the checksum should not get included in the file content. and file should not get corrupted

Current Behavior

File getting corrupted

Reproduction Steps

Deploy S3 server storage with Pure storage "Flash Blade S200 NVMe 4.5.7"
Use client https://mvnrepository.com/artifact/software.amazon.awssdk/s3/2.31.64

Possible Solution

Support to be included for flash storage in client s3

Additional Information/Context

No response

AWS Java SDK version used

2.31.64

JDK version used

17.0

Operating System and version

Mac os 15.5 (24F74)

Metadata

Metadata

Assignees

Labels

bugThis issue is a bug.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions