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]

Reply via email to