prateekm opened a new pull request, #1658:
URL: https://github.com/apache/samza/pull/1658
Symptom: Blob store state restore fails when verifying restored directory
contents due to a mismatch between permissions of local vs remote files.
Cause: Apache Commons 2.11 (at least, more versions may be affected)
FileUtils#deleteDirectory() has a bug where it changes the permissions of
symlink/hardlink files to read-only after deletion. For more details, see
https://issues.apache.org/jira/browse/IO-751. This means that
TaskStorageCommitManager#deleteOldCheckpointDirs() causes the permissions for
the original store files hard-linked from the checkpoint directory to be
changed to read only. This
Changes: Since we cannot control which commons-io version the user
application is using, this PR changes all uses of FileUtils#deleteDirectory to
PathUtils#deleteDirectory() which is not affected. (according to the ticket
above, and verifed with the failing test).
Tests: Discovered with the BlobStoreStateBackendIntegrationTest added in PR
#1657. Verified fix by re-running test with the bad apache-commons version.
--
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]