This is an automated email from the ASF dual-hosted git repository.
tilman pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/main by this push:
new 7a614f669 TIKA-4524: try using requestChecksumCalculation instead of
checksum
7a614f669 is described below
commit 7a614f669c6efedcf0769fc445348a90c67e4437
Author: Tilman Hausherr <[email protected]>
AuthorDate: Sat Oct 18 12:22:00 2025 +0200
TIKA-4524: try using requestChecksumCalculation instead of checksum
---
.../apache/tika/pipes/s3/tests/S3PipeIntegrationTest.java | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git
a/tika-integration-tests/tika-pipes-s3-integration-tests/src/test/java/org/apache/tika/pipes/s3/tests/S3PipeIntegrationTest.java
b/tika-integration-tests/tika-pipes-s3-integration-tests/src/test/java/org/apache/tika/pipes/s3/tests/S3PipeIntegrationTest.java
index 3584f4906..aef366fd7 100644
---
a/tika-integration-tests/tika-pipes-s3-integration-tests/src/test/java/org/apache/tika/pipes/s3/tests/S3PipeIntegrationTest.java
+++
b/tika-integration-tests/tika-pipes-s3-integration-tests/src/test/java/org/apache/tika/pipes/s3/tests/S3PipeIntegrationTest.java
@@ -25,7 +25,6 @@ import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.time.Duration;
import java.time.temporal.ChronoUnit;
-import java.util.Base64;
import java.util.HashSet;
import java.util.Set;
@@ -46,11 +45,11 @@ import org.testcontainers.shaded.org.hamcrest.Matchers;
import software.amazon.awssdk.auth.credentials.AwsBasicCredentials;
import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.core.ResponseInputStream;
+import software.amazon.awssdk.core.checksums.RequestChecksumCalculation;
import software.amazon.awssdk.core.sync.RequestBody;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.S3Configuration;
-import software.amazon.awssdk.services.s3.model.ChecksumAlgorithm;
import software.amazon.awssdk.services.s3.model.CreateBucketRequest;
import software.amazon.awssdk.services.s3.model.GetObjectRequest;
import software.amazon.awssdk.services.s3.model.GetObjectResponse;
@@ -97,10 +96,11 @@ class S3PipeIntegrationTest {
// https://github.com/minio/minio/issues/17662
// https://github.com/minio/minio/issues/20845
MessageDigest md = MessageDigest.getInstance("SHA256");
- byte [] hash = md.digest(bytes);
- String enc64 = Base64.getEncoder().encodeToString(hash);
+ //byte [] hash = md.digest(bytes);
+ //String enc64 = Base64.getEncoder().encodeToString(hash);
PutObjectRequest request =
PutObjectRequest.builder().bucket(FETCH_BUCKET).key(nextFileName).
-
checksumAlgorithm(ChecksumAlgorithm.SHA256).checksumSHA256(enc64).build();
+
//checksumAlgorithm(ChecksumAlgorithm.SHA256).checksumSHA256(enc64).
+ build();
RequestBody requestBody = RequestBody.fromBytes(bytes);
s3Client.putObject(request, requestBody);
}
@@ -122,7 +122,9 @@ class S3PipeIntegrationTest {
// https://github.com/aws/aws-sdk-java-v2/discussions/3536
StaticCredentialsProvider credentialsProvider =
StaticCredentialsProvider.create(awsCreds);
S3Configuration s3c =
S3Configuration.builder().pathStyleAccessEnabled(true).build(); // SO11228792
- s3Client = S3Client.builder().serviceConfiguration(s3c).region(REGION).
+ s3Client = S3Client.builder().
+
requestChecksumCalculation(RequestChecksumCalculation.WHEN_REQUIRED). //
https://stackoverflow.com/a/79488850/535646
+ serviceConfiguration(s3c).region(REGION).
credentialsProvider(credentialsProvider).endpointOverride(new
URI(MINIO_ENDPOINT)).build();
}