ggershinsky commented on code in PR #16724:
URL: https://github.com/apache/iceberg/pull/16724#discussion_r3394241132
##########
data/src/test/java/org/apache/iceberg/data/BaseFormatModelTests.java:
##########
@@ -1706,6 +1717,98 @@ void testDataWriterMetaMap(FileFormat fileFormat) throws
IOException {
});
}
+ @ParameterizedTest
+ @FieldSource("FILE_FORMATS")
+ void testDataWriterEncryptionKeyMetaData(FileFormat fileFormat) throws
IOException {
Review Comment:
rename to something like "testDataWriterAesStreamEncryption"?
##########
data/src/test/java/org/apache/iceberg/data/BaseFormatModelTests.java:
##########
@@ -185,11 +191,16 @@ private static List<Record> project(List<Record> records,
Schema targetSchema) {
FEATURE_CASE_SENSITIVE,
FEATURE_SPLIT,
FEATURE_COLUMN_LEVEL_METRICS,
- FEATURE_COLUMN_METRICS_TRUNCATE_BINARY
+ FEATURE_COLUMN_METRICS_TRUNCATE_BINARY,
+ FEATURE_ENCRYPTION
},
FileFormat.ORC,
new String[] {
- FEATURE_REUSE_CONTAINERS, FEATURE_COLUMN_METRICS_TRUNCATE_BINARY,
FEATURE_READER_DEFAULT
+ FEATURE_REUSE_CONTAINERS,
+ FEATURE_COLUMN_METRICS_TRUNCATE_BINARY,
+ FEATURE_READER_DEFAULT,
+ FEATURE_ENCRYPTION_KEY_METADATA,
+ FEATURE_ENCRYPTION
});
Review Comment:
Parquet's missing feature is "aesStreamEncryption"
##########
data/src/test/java/org/apache/iceberg/data/BaseFormatModelTests.java:
##########
@@ -176,6 +180,8 @@ private static List<Record> project(List<Record> records,
Schema targetSchema) {
static final String FEATURE_REUSE_CONTAINERS = "reuseContainers";
static final String FEATURE_COLUMN_LEVEL_METRICS = "columnLevelMetrics";
static final String FEATURE_COLUMN_METRICS_TRUNCATE_BINARY =
"columnMetricsTruncateBinary";
+ static final String FEATURE_ENCRYPTION = "encryption";
+ static final String FEATURE_ENCRYPTION_KEY_METADATA =
"encryptionKeyMetadata";
Review Comment:
This naming is not clear to me. Maybe "nativeEncryption" and
"aesStreamEncryption"?
##########
data/src/test/java/org/apache/iceberg/data/BaseFormatModelTests.java:
##########
@@ -1706,6 +1717,98 @@ void testDataWriterMetaMap(FileFormat fileFormat) throws
IOException {
});
}
+ @ParameterizedTest
+ @FieldSource("FILE_FORMATS")
+ void testDataWriterEncryptionKeyMetaData(FileFormat fileFormat) throws
IOException {
+ assumeSupports(fileFormat, FEATURE_ENCRYPTION_KEY_METADATA);
+
+ EncryptionManager encryptionManager =
EncryptionTestHelpers.createEncryptionManager();
+ EncryptingFileIO encryptingFileIO = EncryptingFileIO.combine(fileIO,
encryptionManager);
+ EncryptedOutputFile encryptedOutputFile =
+ encryptingFileIO.newEncryptingOutputFile("test-file-" +
UUID.randomUUID());
+
+ FileWriterBuilder<DataWriter<T>, ?> writerBuilder =
+ FormatModelRegistry.dataWriteBuilder(fileFormat, engineType(),
encryptedOutputFile)
+ .keyMetadata(encryptedOutputFile.keyMetadata());
+
+ writeAndAssertEncryptedDataWriter(fileFormat, encryptingFileIO,
writerBuilder);
+ }
+
+ @ParameterizedTest
+ @FieldSource("FILE_FORMATS")
+ void testDataWriterWithFileEncryptionKeyAndWithAADPrefix(FileFormat
fileFormat)
Review Comment:
rename to something like "testDataWriterNativeEncryption"?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]