-
Notifications
You must be signed in to change notification settings - Fork 9.1k
HADOOP-13611. S3A FS deleteOnExit to skip the exists check. #1924
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
base: trunk
Are you sure you want to change the base?
HADOOP-13611. S3A FS deleteOnExit to skip the exists check. #1924
Conversation
* new override method S3AFileSystem.deleteOnExit() which skips the exists check. * FileSystem.processDeleteOnExit() skips exists checks too; relies on delete() to do its work. * make sure all the delete/cancel/process deleteOnExit operations consistently qualify paths, especially the list of paths to delete Change-Id: Icd99615f7e6adbb7a4c6e1cfdff44edc21956961
testing s3 london w/ s3guard. There are no explicit tests of deleteOnExit, but lots of implicit ones as things are always being scheduled for deletion. I suppose I should do one though... |
Note: I tried to allow FS instances to support parallel deletes for extra performance, but it all gets too complex, especially as the delete process is synchronized on the list of paths to delete; easy to cause problems on something which shouldn't be a critical path (unless something uses it in production a lot). What is key: no 404 creation in any registration of paths to delete |
💔 -1 overall
This message was automatically generated. |
And of course I didn't read the javadocs in FileSystem I added last month so should have expected the stack traces. [INFO] [ERROR] TestFileSystemCaching.testDeleteOnExitRemoved:296 Hmm. I think I might just rewind all changes to FileSystem and have S3A build up its own list of files to delete and then delete them at teardown. Avoids complexity and would let us go to submitting delete operations to the thread pool |
💔 -1 overall
This message was automatically generated. |
check.
to do its work.
qualify paths, especially the list of paths to delete