From 7ad9c467c229e1200b65c30f676c9e98b07d27a6 Mon Sep 17 00:00:00 2001 From: Samrat002 Date: Sat, 9 May 2026 13:17:26 +0530 Subject: [PATCH] [FLINK-39642][s3] Fix Illegal argument error message --- .../flink/fs/s3native/NativeS3FileSystemFactory.java | 6 +++--- .../flink/fs/s3native/NativeS3FileSystemFactoryTest.java | 8 +++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/flink-filesystems/flink-s3-fs-native/src/main/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactory.java b/flink-filesystems/flink-s3-fs-native/src/main/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactory.java index b7c0de3acfc06..069c45d8b3e15 100644 --- a/flink-filesystems/flink-s3-fs-native/src/main/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactory.java +++ b/flink-filesystems/flink-s3-fs-native/src/main/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactory.java @@ -356,17 +356,17 @@ public FileSystem create(URI fsUri) throws IOException { // Validate part size: S3 requires minimum 5MB and maximum 5GB per part Preconditions.checkArgument( s3minPartSize >= S3_MULTIPART_MIN_PART_SIZE, - "%s must be at least 5MB (5242880 bytes), but was %d bytes", + "%s must be at least 5MB (5242880 bytes), but was %s bytes", PART_UPLOAD_MIN_SIZE.key(), s3minPartSize); Preconditions.checkArgument( s3minPartSize <= 5L * 1024 * 1024 * 1024, - "%s must not exceed 5GB (5368709120 bytes), but was %d bytes", + "%s must not exceed 5GB (5368709120 bytes), but was %s bytes", PART_UPLOAD_MIN_SIZE.key(), s3minPartSize); Preconditions.checkArgument( maxConcurrentUploads > 0, - "%s must be positive, but was %d", + "%s must be positive, but was %s", MAX_CONCURRENT_UPLOADS.key(), maxConcurrentUploads); diff --git a/flink-filesystems/flink-s3-fs-native/src/test/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactoryTest.java b/flink-filesystems/flink-s3-fs-native/src/test/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactoryTest.java index 21d04bd09f0bf..82a35e3d3c4c4 100644 --- a/flink-filesystems/flink-s3-fs-native/src/test/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactoryTest.java +++ b/flink-filesystems/flink-s3-fs-native/src/test/java/org/apache/flink/fs/s3native/NativeS3FileSystemFactoryTest.java @@ -220,7 +220,8 @@ void testPartSizeTooSmallThrowsException() { config.set(NativeS3FileSystemFactory.PART_UPLOAD_MIN_SIZE, 1024L); assertThatThrownBy(() -> createFs(config)) .isInstanceOf(IllegalArgumentException.class) - .hasMessageContaining("must be at least"); + .hasMessage( + "s3.upload.min.part.size must be at least 5MB (5242880 bytes), but was 1024 bytes"); } @Test @@ -229,7 +230,8 @@ void testPartSizeTooLargeThrowsException() { config.set(NativeS3FileSystemFactory.PART_UPLOAD_MIN_SIZE, 6L * 1024 * 1024 * 1024); assertThatThrownBy(() -> createFs(config)) .isInstanceOf(IllegalArgumentException.class) - .hasMessageContaining("must not exceed 5GB"); + .hasMessage( + "s3.upload.min.part.size must not exceed 5GB (5368709120 bytes), but was 6442450944 bytes"); } // --- Max concurrent uploads --- @@ -240,7 +242,7 @@ void testInvalidMaxConcurrentUploadsThrowsException() { config.set(NativeS3FileSystemFactory.MAX_CONCURRENT_UPLOADS, 0); assertThatThrownBy(() -> createFs(config)) .isInstanceOf(IllegalArgumentException.class) - .hasMessageContaining("must be positive"); + .hasMessage("s3.upload.max.concurrent.uploads must be positive, but was 0"); } // --- Entropy injection ---