Project

General

Profile

Feature #20693

Updated by Peter Amstutz 8 months ago

Background: 

 Multiple Arvados services (multiple instances of keep-web, arvados-client mount, arv-mount, etc) are trying to write files to the same collection at the same time. 

 Assume they are adding/removing/changing multiple files but not making changes that directly conflict/contradict one another. 

 Requirements: 

 * If a file is created or modified it won't disappear as a result of an update from another service that didn't know about that file 
 * If there is a single writer, performance impact should be minimal 
 * If there are multiple writers, it is acceptable that one of them may have to wait to avoid conflicts 
 * Can use pessimistic locking to ensure only one client can have a write lock at a time, attempting to open a file for writing that is locked by another should return an error on open 
 * Support WebDAV lock protocol 

Back