Skip to content

HADOOP-13230. Optionally retain directory markers #1861

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

steveloughran
Copy link
Contributor

@steveloughran steveloughran commented Feb 26, 2020

This allows a bucket to have policies of keep, delete or authoritative,
where the latter means "delete in auth dirs"

Retention policy is implemented in its own little class for testing;
does need a callback to probe for a path being auth or not.

Design Document

Tests? Not yet, no.

Change-Id: Ibcd86048ffaa4c39bba5bd4ea796a24ea8d7f479

@steveloughran steveloughran added enhancement fs/s3 changes related to hadoop-aws; submitter must declare test endpoint help wanted labels Feb 26, 2020
@apache apache deleted a comment from hadoop-yetus Feb 27, 2020
@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch 2 times, most recently from 6cd495d to 0cf0df5 Compare March 18, 2020 17:50
@steveloughran
Copy link
Contributor Author

HADOOP-13230. directory markers

the LIST call asks for two objects when needEmptyDirectoryFlag = true, so can distinguish

dir marker exists
from
dir marker exists + children

moved much of the prefix/object analysis into S3ListResult where I intend to add some unit tests for the result parsing.

Change the enum for all innerGetFileStatus calls from ALL to FILES_AND_DIRECTORIES, as we no longer need to do any HEAD / request on a marker; the list finds it after all.

There may be more risk of delayed consistency in listings

Tests: one mocking test fails (as usual); also failures in ITestS3AFileOperationCost, ITestS3GuardOutOfBandOperations, ITestRestrictedReadAccess


[ERROR] Failures: 
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnEmptyDir:161->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_list_requests starting=1 current=2 diff=1: object_list_requests expected:<0> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnEmptyDir:159->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=4 current=5 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnMissingFile:180->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=0 current=1 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnMissingFile:180->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=2 current=3 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnMissingSubPath:192->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=0 current=1 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnMissingSubPath:192->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=2 current=3 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCostOfGetFileStatusOnNonEmptyDir:215->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=5 current=6 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testCreateCost:511->verifyOperationCount:140->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 Count of object_metadata_requests starting=2 current=3 diff=1: object_metadata_requests expected:<2> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testDirProbes:474 [LIST output is not considered empty] 
Expecting:
  <S3AFileStatus{path=s3a://stevel-london/fork-0001/test/testEmptyDirHeadProbe; isDirectory=true; modification_time=0; access_time=0; owner=stevel; group=stevel; permission=rwxrwxrwx; isSymlink=false; hasAcl=false; isEncrypted=true; isErasureCoded=false} isEmptyDirectory=TRUE eTag=null versionId=null>
to match 'is empty' predicate.
[ERROR]   ITestRestrictedReadAccess.testNoReadAccess:304->checkDeleteOperations:637->accessDenied:680 Expected a java.nio.file.AccessDeniedException to be thrown, but got the result: : true
[ERROR]   ITestRestrictedReadAccess.testNoReadAccess:298->checkBasicFileOperations:413->accessDeniedIf:697 Expected a java.nio.file.AccessDeniedException to be thrown, but got the result: : [Lorg.apache.hadoop.fs.FileStatus;@1a902257
[ERROR] Errors: 
[ERROR]   ITestS3GuardOutOfBandOperations.testListingDelete:988->expectExceptionWhenReadingOpenFileAPI:1055 » Execution

the access ones are failing because LIST is working whereas a HEAD would fail if the caller doesn't have read access to the object. OOB ops may be from me setting up a new bucket. Cost ones: well, our costs have come down. literally

@steveloughran
Copy link
Contributor Author

java.lang.NullPointerException
	at org.apache.hadoop.fs.s3a.S3ListResult.getCommonPrefixes(S3ListResult.java:100)
	at org.apache.hadoop.fs.s3a.S3ListResult.hasPrefixesOrObjects(S3ListResult.java:143)
	at org.apache.hadoop.fs.s3a.S3AFileSystem.s3GetFileStatus(S3AFileSystem.java:3066)
	at org.apache.hadoop.fs.s3a.S3AFileSystem.innerGetFileStatus(S3AFileSystem.java:2935)
	at org.apache.hadoop.fs.s3a.S3AFileSystem.getFileStatus(S3AFileSystem.java:2795)
	at org.apache.hadoop.fs.s3a.TestS3AGetFileStatus.testFakeDirectory(TestS3AGetFileStatus.java:84)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl

@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from 5b14077 to dd2570d Compare April 6, 2020 19:14
@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 12s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 12 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 48s Maven dependency ordering for branch
+1 💚 mvninstall 21m 31s trunk passed
+1 💚 compile 17m 46s trunk passed
+1 💚 checkstyle 2m 44s trunk passed
+1 💚 mvnsite 2m 10s trunk passed
+1 💚 shadedclient 21m 40s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 27s trunk passed
+0 🆗 spotbugs 1m 7s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 11s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 22s Maven dependency ordering for patch
+1 💚 mvninstall 1m 24s the patch passed
+1 💚 compile 17m 9s the patch passed
-1 ❌ javac 17m 9s root generated 12 new + 1870 unchanged - 0 fixed = 1882 total (was 1870)
-0 ⚠️ checkstyle 2m 49s root: The patch generated 35 new + 47 unchanged - 0 fixed = 82 total (was 47)
+1 💚 mvnsite 2m 10s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 15m 24s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 25s the patch passed
+1 💚 findbugs 3m 28s the patch passed
_ Other Tests _
-1 ❌ unit 9m 13s hadoop-common in the patch passed.
+1 💚 unit 1m 25s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 46s The patch does not generate ASF License warnings.
127m 48s
Reason Tests
Failed junit tests hadoop.security.TestFixKerberosTicketOrder
hadoop.security.TestRaceWhenRelogin
Subsystem Report/Notes
Docker Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/8/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux 1f9ef040f2e2 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / ab7495d
Default Java 1.8.0_242
javac https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/8/artifact/out/diff-compile-javac-root.txt
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/8/artifact/out/diff-checkstyle-root.txt
unit https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/8/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/8/testReport/
Max. process+thread count 1928 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/8/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@steveloughran
Copy link
Contributor Author

Operation cost tests failiing; I'm trying to (a) cut down things to a minimum and (b) understand why every head/list call takes place, rather than change the assertions to match what's happening. Hadn't realised until now, for example, that rename(file, dest) has 3 HEAD calls, for example

[INFO] 
[ERROR] Failures: 
[ERROR]   ITestS3AFileOperationCost.testFakeDirectoryDeletion:598->verifyMetrics:490->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 after rename(srcFilePath, destFilePath) [object_delete_requests starting=5 current=8 diff=3, directories_created starting=4 current=5 diff=1, directories_deleted starting=0 current=0 diff=0, fake_directories_deleted starting=31 current=46 diff=15, object_list_requests starting=20 current=23 diff=3, object_metadata_requests starting=18 current=21 diff=3] dest dir depth=8: directories_created expected:<0> but was:<1>
[ERROR]   ITestS3AFileOperationCost.testFakeDirectoryDeletion:621->verifyMetrics:490->Assert.assertEquals:645->Assert.failNotEquals:834->Assert.fail:88 after rename(s3a://stevel-london/test/testFakeDirectoryDeletion%5Braw-keep-markers%5D/1/2/3/4/5/6/source2.txt, s3a://stevel-london/test/testFakeDirectoryDeletion[raw-keep-markers]/1/2/3/4/5/6/source.txt) [object_delete_requests starting=1 current=2 diff=1, directories_created starting=4 current=5 diff=1, directories_deleted starting=0 current=0 diff=0, fake_directories_deleted starting=0 current=0 diff=0, object_list_requests starting=25 current=28 diff=3, object_metadata_requests starting=25 current=28 diff=3] dest dir depth=8: directories_created expected:<0> but was:<1>
[INFO] 

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 28s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 10 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 1m 9s Maven dependency ordering for branch
+1 💚 mvninstall 27m 12s trunk passed
+1 💚 compile 23m 0s trunk passed
+1 💚 checkstyle 3m 49s trunk passed
+1 💚 mvnsite 2m 43s trunk passed
+1 💚 shadedclient 26m 24s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 40s trunk passed
+0 🆗 spotbugs 1m 23s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 4m 8s trunk passed
-0 ⚠️ patch 1m 50s Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 23s Maven dependency ordering for patch
+1 💚 mvninstall 1m 56s the patch passed
+1 💚 compile 22m 0s the patch passed
-1 ❌ javac 22m 0s root generated 12 new + 1870 unchanged - 0 fixed = 1882 total (was 1870)
-0 ⚠️ checkstyle 3m 11s root: The patch generated 39 new + 47 unchanged - 0 fixed = 86 total (was 47)
+1 💚 mvnsite 2m 34s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 2s The patch has no ill-formed XML file.
+1 💚 shadedclient 19m 6s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 53s the patch passed
+1 💚 findbugs 4m 15s the patch passed
_ Other Tests _
+1 💚 unit 10m 54s hadoop-common in the patch passed.
+1 💚 unit 1m 35s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 54s The patch does not generate ASF License warnings.
159m 15s
Subsystem Report/Notes
Docker Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/9/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux 1517b0131fc9 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / e53d472
Default Java 1.8.0_242
javac https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/9/artifact/out/diff-compile-javac-root.txt
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/9/artifact/out/diff-checkstyle-root.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/9/testReport/
Max. process+thread count 2229 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/9/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from d003c0d to 8b918ee Compare April 14, 2020 11:02
@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 35s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 10 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 1m 0s Maven dependency ordering for branch
+1 💚 mvninstall 26m 9s trunk passed
+1 💚 compile 22m 5s trunk passed
+1 💚 checkstyle 3m 15s trunk passed
+1 💚 mvnsite 2m 35s trunk passed
+1 💚 shadedclient 25m 20s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 44s trunk passed
+0 🆗 spotbugs 1m 28s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 4m 11s trunk passed
-0 ⚠️ patch 1m 52s Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 26s Maven dependency ordering for patch
+1 💚 mvninstall 1m 38s the patch passed
+1 💚 compile 21m 51s the patch passed
-1 ❌ javac 21m 51s root generated 12 new + 1870 unchanged - 0 fixed = 1882 total (was 1870)
-0 ⚠️ checkstyle 3m 32s root: The patch generated 42 new + 59 unchanged - 0 fixed = 101 total (was 59)
+1 💚 mvnsite 2m 23s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 2s The patch has no ill-formed XML file.
+1 💚 shadedclient 17m 34s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 31s the patch passed
+1 💚 findbugs 3m 29s the patch passed
_ Other Tests _
+1 💚 unit 9m 21s hadoop-common in the patch passed.
+1 💚 unit 1m 36s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 47s The patch does not generate ASF License warnings.
151m 24s
Subsystem Report/Notes
Docker Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/10/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux f2b1f66e338a 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / aeeebc5
Default Java 1.8.0_242
javac https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/10/artifact/out/diff-compile-javac-root.txt
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/10/artifact/out/diff-checkstyle-root.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/10/testReport/
Max. process+thread count 1343 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/10/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from 8b918ee to 58a2279 Compare April 15, 2020 20:51
@hadoop-yetus
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 16s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 10 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 21s Maven dependency ordering for branch
+1 💚 mvninstall 21m 31s trunk passed
+1 💚 compile 17m 50s trunk passed
+1 💚 checkstyle 2m 49s trunk passed
+1 💚 mvnsite 2m 8s trunk passed
+1 💚 shadedclient 21m 40s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 26s trunk passed
+0 🆗 spotbugs 1m 8s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 9s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 21s Maven dependency ordering for patch
+1 💚 mvninstall 1m 22s the patch passed
+1 💚 compile 17m 8s the patch passed
+1 💚 javac 17m 8s the patch passed
-0 ⚠️ checkstyle 2m 50s root: The patch generated 39 new + 60 unchanged - 0 fixed = 99 total (was 60)
+1 💚 mvnsite 2m 8s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 15m 33s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 28s the patch passed
+1 💚 findbugs 3m 27s the patch passed
_ Other Tests _
+1 💚 unit 9m 16s hadoop-common in the patch passed.
+1 💚 unit 1m 33s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 47s The patch does not generate ASF License warnings.
128m 3s
Subsystem Report/Notes
Docker Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/11/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux fbc48ef4a1d4 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / cc5c1da
Default Java 1.8.0_242
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/11/artifact/out/diff-checkstyle-root.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/11/testReport/
Max. process+thread count 2187 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/11/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@hadoop-yetus
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 25m 1s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 10 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 49s Maven dependency ordering for branch
+1 💚 mvninstall 19m 13s trunk passed
+1 💚 compile 19m 14s trunk passed
+1 💚 checkstyle 2m 36s trunk passed
+1 💚 mvnsite 2m 21s trunk passed
+1 💚 shadedclient 20m 38s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 45s trunk passed
+0 🆗 spotbugs 1m 12s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 15s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 24s Maven dependency ordering for patch
+1 💚 mvninstall 1m 22s the patch passed
+1 💚 compile 16m 22s the patch passed
+1 💚 javac 16m 22s the patch passed
-0 ⚠️ checkstyle 2m 38s root: The patch generated 33 new + 60 unchanged - 0 fixed = 93 total (was 60)
+1 💚 mvnsite 2m 34s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 15m 10s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 38s the patch passed
+1 💚 findbugs 3m 34s the patch passed
_ Other Tests _
+1 💚 unit 9m 9s hadoop-common in the patch passed.
+1 💚 unit 1m 25s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 53s The patch does not generate ASF License warnings.
150m 27s
Subsystem Report/Notes
Docker Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/12/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux f66cbca97f02 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / 8505840
Default Java 1.8.0_242
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/12/artifact/out/diff-checkstyle-root.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/12/testReport/
Max. process+thread count 2672 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/12/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@steveloughran
Copy link
Contributor Author

failure in restricted permission test as ls empty dir now succeeds in list (no HEAD, see)

[INFO] Running org.apache.hadoop.fs.s3a.auth.delegation.ITestSessionDelegationTokens[INFO] Running org.apache.hadoop.fs.s3a.auth.delegation.ITestSessionDelegationInFileystem[ERROR] Tests run: 3, Failures: 1, Errors: 0, Skipped: 2, Time elapsed: 31.512 s <<< FAILURE! - in org.apache.hadoop.fs.s3a.auth.ITestRestrictedReadAccess[ERROR] testNoReadAccess[raw](org.apache.hadoop.fs.s3a.auth.ITestRestrictedReadAccess)  Time elapsed: 26.071 s  <<< FAILURE! java.lang.AssertionError: Expected a java.nio.file.AccessDeniedException to be thrown, but got the result: : [Lorg.apache.hadoop.fs.s3a.S3AFileStatus;@53d4d5a
	at org.apache.hadoop.test.LambdaTestUtils.intercept(LambdaTestUtils.java:499)
	at org.apache.hadoop.test.LambdaTestUtils.intercept(LambdaTestUtils.java:384)
	at org.apache.hadoop.fs.s3a.auth.ITestRestrictedReadAccess.accessDeniedIf(ITestRestrictedReadAccess.java:697)
	at org.apache.hadoop.fs.s3a.auth.ITestRestrictedReadAccess.checkBasicFileOperations(ITestRestrictedReadAccess.java:413)
	at org.apache.hadoop.fs.s3a.auth.ITestRestrictedReadAccess.testNoReadAccess(ITestRestrictedReadAccess.java:298)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.lang.Thread.run(Thread.java:748)

@liuml07 liuml07 self-requested a review April 17, 2020 19:29
Copy link
Member

@liuml07 liuml07 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a long patch. Let me learn by reading doc and asking questions. Ignore me if it does not make sense. Thanks,

// if needed
directoryPolicy = new DirectoryPolicyImpl(conf,
this::allowAuthoritative);
LOG.debug("Directory marker retention policy is {}",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can be info level since this is new and client may want to see the message.

public static final Set<StatusProbeEnum> DIRECTORIES =
LIST_ONLY;


Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we still need DirMarker in the StatusProbeEnum?

// no dir, fall back to looking for a file
// (failure condition if true)
status = innerGetFileStatus(parent, false,
StatusProbeEnum.HEAD_ONLY);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know they are the same, but is StatusProbeEnum.FILE a bit better here since the status is for heading a file.

// only look against S3 for directories; saves
// a HEAD request on all normal operations.
S3AFileStatus dstParentStatus = innerGetFileStatus(parent,
false, StatusProbeEnum.DIRECTORIES);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We do not need to fallback to StatusProbeEnum.FILE because we know this innerGetFileStatus should not throw FileNotFoundException - at least dst should show in the listing. Is this correct?

case Authoritative:
return authoritativenes.test(path);
case Delete:
default: // which cannot happen
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

throw unchecked exception so new policy (in future) will fail in an obvious way?

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 30s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 10 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 58s Maven dependency ordering for branch
+1 💚 mvninstall 21m 59s trunk passed
+1 💚 compile 18m 4s trunk passed
+1 💚 checkstyle 3m 7s trunk passed
+1 💚 mvnsite 2m 46s trunk passed
+1 💚 shadedclient 23m 23s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 28s trunk passed
+0 🆗 spotbugs 1m 8s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 23s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 21s Maven dependency ordering for patch
+1 💚 mvninstall 1m 27s the patch passed
+1 💚 compile 17m 36s the patch passed
+1 💚 javac 17m 36s the patch passed
-0 ⚠️ checkstyle 2m 52s root: The patch generated 33 new + 60 unchanged - 0 fixed = 93 total (was 60)
+1 💚 mvnsite 2m 7s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 17m 30s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 54s the patch passed
+1 💚 findbugs 3m 52s the patch passed
_ Other Tests _
-1 ❌ unit 11m 4s hadoop-common in the patch passed.
+1 💚 unit 1m 37s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 45s The patch does not generate ASF License warnings.
136m 2s
Reason Tests
Failed junit tests hadoop.security.TestFixKerberosTicketOrder
hadoop.ha.TestZKFailoverController
Subsystem Report/Notes
Docker ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/13/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux 28705c5b4c3b 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / 0fe4903
Default Java Private Build-1.8.0_252-8u252-b09-1~18.04-b09
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/13/artifact/out/diff-checkstyle-root.txt
unit https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/13/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/13/testReport/
Max. process+thread count 2950 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/13/console
versions git=2.17.1 maven=3.6.0 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 17s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 13 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 22s Maven dependency ordering for branch
+1 💚 mvninstall 21m 15s trunk passed
+1 💚 compile 17m 54s trunk passed
+1 💚 checkstyle 2m 50s trunk passed
+1 💚 mvnsite 2m 10s trunk passed
+1 💚 shadedclient 21m 6s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 47s trunk passed
+0 🆗 spotbugs 1m 11s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 22s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 23s Maven dependency ordering for patch
+1 💚 mvninstall 1m 24s the patch passed
+1 💚 compile 17m 59s the patch passed
+1 💚 javac 17m 59s the patch passed
-0 ⚠️ checkstyle 2m 53s root: The patch generated 35 new + 64 unchanged - 1 fixed = 99 total (was 65)
+1 💚 mvnsite 2m 9s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 15m 15s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 28s the patch passed
+1 💚 findbugs 3m 31s the patch passed
_ Other Tests _
-1 ❌ unit 9m 31s hadoop-common in the patch passed.
+1 💚 unit 1m 34s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 45s The patch does not generate ASF License warnings.
127m 39s
Reason Tests
Failed junit tests hadoop.security.TestRaceWhenRelogin
Subsystem Report/Notes
Docker ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/14/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux 179aeb6735c8 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / fff1d2c
Default Java Private Build-1.8.0_252-8u252-b09-1~18.04-b09
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/14/artifact/out/diff-checkstyle-root.txt
unit https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/14/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/14/testReport/
Max. process+thread count 1341 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/14/console
versions git=2.17.1 maven=3.6.0 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 20m 58s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 13 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 45s Maven dependency ordering for branch
+1 💚 mvninstall 20m 48s trunk passed
+1 💚 compile 17m 33s trunk passed
+1 💚 checkstyle 2m 49s trunk passed
+1 💚 mvnsite 2m 6s trunk passed
+1 💚 shadedclient 20m 31s branch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 27s trunk passed
+0 🆗 spotbugs 1m 8s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 10s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 21s Maven dependency ordering for patch
+1 💚 mvninstall 1m 22s the patch passed
+1 💚 compile 16m 56s the patch passed
+1 💚 javac 16m 56s the patch passed
-0 ⚠️ checkstyle 2m 54s root: The patch generated 33 new + 64 unchanged - 1 fixed = 97 total (was 65)
+1 💚 mvnsite 2m 7s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 15m 17s patch has no errors when building and testing our client artifacts.
+1 💚 javadoc 1m 27s the patch passed
-1 ❌ findbugs 1m 16s hadoop-tools/hadoop-aws generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
_ Other Tests _
+1 💚 unit 9m 11s hadoop-common in the patch passed.
+1 💚 unit 1m 30s hadoop-aws in the patch passed.
+1 💚 asflicense 0m 46s The patch does not generate ASF License warnings.
144m 15s
Reason Tests
FindBugs module:hadoop-tools/hadoop-aws
Dead store to leafMarkers in org.apache.hadoop.fs.s3a.tools.MarkerTool.scan(Path, boolean, int, boolean, StoreContext, OperationCallbacks) At MarkerTool.java:org.apache.hadoop.fs.s3a.tools.MarkerTool.scan(Path, boolean, int, boolean, StoreContext, OperationCallbacks) At MarkerTool.java:[line 187]
Subsystem Report/Notes
Docker ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/15/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux 3ab83a20dcc6 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / c757cb6
Default Java Private Build-1.8.0_252-8u252-b09-1~18.04-b09
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/15/artifact/out/diff-checkstyle-root.txt
findbugs https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/15/artifact/out/new-findbugs-hadoop-tools_hadoop-aws.html
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/15/testReport/
Max. process+thread count 2226 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/15/console
versions git=2.17.1 maven=3.6.0 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from 262b446 to 15de2eb Compare May 14, 2020 10:28
@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from 15de2eb to de11cbd Compare June 8, 2020 09:59
@apache apache deleted a comment from hadoop-yetus Jun 11, 2020
@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from de11cbd to 90defbd Compare July 6, 2020 18:04
@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 1m 8s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 15 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 0m 22s Maven dependency ordering for branch
+1 💚 mvninstall 21m 30s trunk passed
+1 💚 compile 20m 31s trunk passed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04
+1 💚 compile 17m 15s trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
+1 💚 checkstyle 2m 53s trunk passed
+1 💚 mvnsite 2m 6s trunk passed
+1 💚 shadedclient 20m 46s branch has no errors when building and testing our client artifacts.
-1 ❌ javadoc 0m 36s hadoop-common in trunk failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
-1 ❌ javadoc 0m 35s hadoop-aws in trunk failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
+1 💚 javadoc 1m 27s trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
+0 🆗 spotbugs 1m 7s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 3m 11s trunk passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 22s Maven dependency ordering for patch
-1 ❌ mvninstall 0m 26s hadoop-aws in the patch failed.
-1 ❌ compile 18m 45s root in the patch failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
-1 ❌ javac 18m 45s root in the patch failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
-1 ❌ compile 16m 22s root in the patch failed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09.
-1 ❌ javac 16m 22s root in the patch failed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09.
-0 ⚠️ checkstyle 2m 51s root: The patch generated 60 new + 64 unchanged - 1 fixed = 124 total (was 65)
-1 ❌ mvnsite 0m 41s hadoop-aws in the patch failed.
-1 ❌ whitespace 0m 0s The patch has 4 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply
+1 💚 xml 0m 1s The patch has no ill-formed XML file.
+1 💚 shadedclient 15m 34s patch has no errors when building and testing our client artifacts.
-1 ❌ javadoc 0m 35s hadoop-common in the patch failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
-1 ❌ javadoc 0m 35s hadoop-aws in the patch failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
+1 💚 javadoc 1m 25s the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
-1 ❌ findbugs 0m 39s hadoop-aws in the patch failed.
_ Other Tests _
-1 ❌ unit 9m 20s hadoop-common in the patch passed.
-1 ❌ unit 0m 40s hadoop-aws in the patch failed.
+1 💚 asflicense 0m 45s The patch does not generate ASF License warnings.
165m 28s
Reason Tests
Failed junit tests hadoop.security.TestFixKerberosTicketOrder
Subsystem Report/Notes
Docker ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/Dockerfile
GITHUB PR #1861
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml
uname Linux 8ccf523e390a 4.15.0-101-generic #102-Ubuntu SMP Mon May 11 10:07:26 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / 834372f
Default Java Private Build-1.8.0_252-8u252-b09-1~18.04-b09
Multi-JDK versions /usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_252-8u252-b09-1~18.04-b09
javadoc https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/branch-javadoc-hadoop-common-project_hadoop-common-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
javadoc https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/branch-javadoc-hadoop-tools_hadoop-aws-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
mvninstall https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-mvninstall-hadoop-tools_hadoop-aws.txt
compile https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-compile-root-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
javac https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-compile-root-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
compile https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-compile-root-jdkPrivateBuild-1.8.0_252-8u252-b09-1~18.04-b09.txt
javac https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-compile-root-jdkPrivateBuild-1.8.0_252-8u252-b09-1~18.04-b09.txt
checkstyle https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/diff-checkstyle-root.txt
mvnsite https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-mvnsite-hadoop-tools_hadoop-aws.txt
whitespace https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/whitespace-eol.txt
javadoc https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-javadoc-hadoop-common-project_hadoop-common-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
javadoc https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-javadoc-hadoop-tools_hadoop-aws-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
findbugs https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-findbugs-hadoop-tools_hadoop-aws.txt
unit https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt
unit https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/artifact/out/patch-unit-hadoop-tools_hadoop-aws.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/testReport/
Max. process+thread count 1648 (vs. ulimit of 5500)
modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1861/18/console
versions git=2.17.1 maven=3.6.0 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

This is a merge of the ongoing work applied as a single patch
to trunk.

Change-Id: Ia6481fa095b2d4d3135197b81d7b190c20efd4c0
lots of work on cost of operation tests.

Change-Id: I846794d8639d860ab36be4edcda0404cfb5d610c
todo: move from hard coded 0, 1 into constants everywhere
Change-Id: If589e3df85d6cdddbbc7d1c03f6c578eaff06662
* defined constants for the Head/List cost of various ops,
use them in the asserts over "1", "2" etc to make clearer origin
of operations

* Cut the standalone marker HEAD request. We don't need it, ever.

That will simplify backporting too; I have a clear plan of the minimum
needed for backporting to branch-3.3 and then again for 3.0-3.2

Change-Id: I33f9ccf2b477c027afe70137993c8344554f07c6
Need to only copy leaf markers on rename so a copy from
an auth dir to a non-auth dir doesn't contaminate the dest.

Change-Id: Ic99580c15287d409acc13dc807ee16e77b72e4b7
 stopping double queuing files to be deleted -DDB was rejecting this

 fix all tests which were failing due to changes in getFileStatus probes

 * no HEAD + / probes, so list dir calls don't fail if the caller lacks read access to the object
 * isFile doesn't do a list any more, and the bucket existence checks don't take place aws-side.
 * TTL checking logic has improved, breaking tests which assumed that non-auth guarded ops will be probing s3.

Change-Id: I4b6ec64f910cd1550dda67c3eee4e96677f009e6
Change-Id: I076b339249098cb61b6087643290e19828b41d60
- move constants of head/list costs into its own class for use
  across tests

- move the declarative assertions about op costs into its own class,
  OperationCostValidator

This is part of a change to move the new operation cost tests into
their own suite, as this one is too big and becoming too much
merge conflict. Also it'd be nice to include cost asserts into
other test suites.

Change-Id: Ifafa22e5b66a1fc27f61e81993c3b642a0210d1c
@steveloughran steveloughran force-pushed the s3/HADOOP-13230-dir-markers branch from 90defbd to 1bdb50d Compare July 13, 2020 19:34
@apache apache deleted a comment from hadoop-yetus Jul 14, 2020
@apache apache deleted a comment from hadoop-yetus Jul 14, 2020
@steveloughran steveloughran deleted the s3/HADOOP-13230-dir-markers branch July 16, 2020 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement fs/s3 changes related to hadoop-aws; submitter must declare test endpoint help wanted
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants