mehakmeet opened a new pull request #2706:
URL: https://github.com/apache/hadoop/pull/2706
Tests: mvn -T 32 clean verify -Ddynamo -Dauth -Dscale -Dparallel-tests
Region: ap-south-1
```
[INFO] Results:
[INFO]
[WARNING] Tests run: 535, Failures: 0, Errors: 0, Skipped: 5
```
```
[INFO] Results:
[INFO]
[ERROR] Failures:
[ERROR]
ITestS3AEncryptionCSEAsymmetric>ITestS3AEncryptionCSE.testEncryption:48->ITestS3AEncryptionCSE.validateEncryptionForFilesize:82->AbstractS3ATestBase.writeThenReadFile:196->AbstractS3ATestBase.writeThenReadFile:209->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88
Wrong file length of file
s3a://mehakmeet-singh-data/fork-0001/test/testEncryption0 status:
S3AFileStatus{path=s3a://mehakmeet-singh-data/fork-0001/test/testEncryption0;
isDirectory=false; length=16; replication=1; blocksize=33554432;
modification_time=1613656460000; access_time=0; owner=mehakmeet.singh;
group=mehakmeet.singh; permission=rw-rw-rw-; isSymlink=false; hasAcl=false;
isEncrypted=true; isErasureCoded=false} isEmptyDirectory=FALSE
eTag=91f7a9a65b91c2332c572ea76bdbe822 versionId=null expected:<0> but was:<16>
[ERROR]
ITestS3AEncryptionCSEAsymmetric>ITestS3AEncryptionCSE.testEncryptionOverRename:63->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88
Wrong file length of file
s3a://mehakmeet-singh-data/fork-0001/test/testEncryptionOverRename status:
S3AFileStatus{path=s3a://mehakmeet-singh-data/fork-0001/test/testEncryptionOverRename;
isDirectory=false; length=1040; replication=1; blocksize=33554432;
modification_time=1613656458000; access_time=0; owner=mehakmeet.singh;
group=mehakmeet.singh; permission=rw-rw-rw-; isSymlink=false; hasAcl=false;
isEncrypted=true; isErasureCoded=false} isEmptyDirectory=FALSE
eTag=97712202251ecc080bbbf909c9000718 versionId=null expected:<1024> but
was:<1040>
[ERROR]
ITestS3AEncryptionCSEKms>ITestS3AEncryptionCSE.testEncryption:48->ITestS3AEncryptionCSE.validateEncryptionForFilesize:82->AbstractS3ATestBase.writeThenReadFile:196->AbstractS3ATestBase.writeThenReadFile:209->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88
Wrong file length of file
s3a://mehakmeet-singh-data/fork-0001/test/testEncryption0 status:
S3AFileStatus{path=s3a://mehakmeet-singh-data/fork-0001/test/testEncryption0;
isDirectory=false; length=16; replication=1; blocksize=33554432;
modification_time=1613656468000; access_time=0; owner=mehakmeet.singh;
group=mehakmeet.singh; permission=rw-rw-rw-; isSymlink=false; hasAcl=false;
isEncrypted=true; isErasureCoded=false} isEmptyDirectory=FALSE
eTag=74cb30cc19ee58be3bcd462120c16eb7 versionId=null expected:<0> but was:<16>
[ERROR]
ITestS3AEncryptionCSEKms>ITestS3AEncryptionCSE.testEncryptionOverRename:63->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88
Wrong file length of file
s3a://mehakmeet-singh-data/fork-0001/test/testEncryptionOverRename status:
S3AFileStatus{path=s3a://mehakmeet-singh-data/fork-0001/test/testEncryptionOverRename;
isDirectory=false; length=1040; replication=1; blocksize=33554432;
modification_time=1613656465000; access_time=0; owner=mehakmeet.singh;
group=mehakmeet.singh; permission=rw-rw-rw-; isSymlink=false; hasAcl=false;
isEncrypted=true; isErasureCoded=false} isEmptyDirectory=FALSE
eTag=d03375638396ae14794cde1a7e5fd4f8 versionId=null expected:<1024> but
was:<1040>
[ERROR]
ITestS3AEncryptionCSESymmetric>ITestS3AEncryptionCSE.testEncryption:48->ITestS3AEncryptionCSE.validateEncryptionForFilesize:82->AbstractS3ATestBase.writeThenReadFile:196->AbstractS3ATestBase.writeThenReadFile:209->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88
Wrong file length of file
s3a://mehakmeet-singh-data/fork-0002/test/testEncryption0 status:
S3AFileStatus{path=s3a://mehakmeet-singh-data/fork-0002/test/testEncryption0;
isDirectory=false; length=16; replication=1; blocksize=33554432;
modification_time=1613656453000; access_time=0; owner=mehakmeet.singh;
group=mehakmeet.singh; permission=rw-rw-rw-; isSymlink=false; hasAcl=false;
isEncrypted=true; isErasureCoded=false} isEmptyDirectory=FALSE
eTag=ff01163e592622879cd0cdb7005618ca versionId=null expected:<0> but was:<16>
[ERROR]
ITestS3AEncryptionCSESymmetric>ITestS3AEncryptionCSE.testEncryptionOverRename:63->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88
Wrong file length of file
s3a://mehakmeet-singh-data/fork-0002/test/testEncryptionOverRename status:
S3AFileStatus{path=s3a://mehakmeet-singh-data/fork-0002/test/testEncryptionOverRename;
isDirectory=false; length=1040; replication=1; blocksize=33554432;
modification_time=1613656451000; access_time=0; owner=mehakmeet.singh;
group=mehakmeet.singh; permission=rw-rw-rw-; isSymlink=false; hasAcl=false;
isEncrypted=true; isErasureCoded=false} isEmptyDirectory=FALSE
eTag=1802986c25982cdacb58aff624626eeb versionId=null expected:<1024> but
was:<1040>
```
When we do fs.getFileStatus().getLen() to get the content length of the
encrypted file, it is not the same as the original length and hence, the tests
are breaking.
```[INFO]
[ERROR] Tests run: 1427, Failures: 7, Errors: 21, Skipped: 458
```
Failures other than S3-CSE tests are config related
```
[ERROR] Errors:
[ERROR]
ITestS3AContractRootDir>AbstractContractRootDirectoryTest.testRecursiveRootListing:267
ยป TestTimedOut
[INFO]
[ERROR] Tests run: 151, Failures: 0, Errors: 1, Skipped: 28
```
When I remove the checks for file content Lengths from the tests, the tests
run successfully, hence, the Key-wrap Algo and Content Encryption Algo are used
as intended successfully.
One possible way we explored to tackle the padding issue was to tweak the
s3GetFileStatus call to return a FileStatus with "UNENCRYPTED_CONTENT_LENGTH"
header which comes in the user metadata, but this would still break where we
don't get these headers to do our tasks. Hence, consistency of content Length
needs to be maintained.
P.S: Need more tests to validate that even with tweaking, we are breaking
some tests.
CC: @steveloughran
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]