1. 26 Jul, 2017 1 commit
    • Eric Cano's avatar
      Fixed racy implementation of BackendRados::lock{Exclusive|Shared}() · aa56a1c3
      Eric Cano authored
      As rados re-creates an object when trying to lock it, we tested for presence before locking.
      This is racy as object could be deleted in the mean time.
      Instead, we now lock blindly and delete the object if we find it having a zero-size.
      As we own the lock, this is safe.
      
      This problem led to issues in garbage colector, where agent gets polled while it could disappear.
      aa56a1c3
  2. 25 Jul, 2017 8 commits
  3. 24 Jul, 2017 5 commits
  4. 21 Jul, 2017 3 commits
  5. 20 Jul, 2017 5 commits
  6. 19 Jul, 2017 3 commits
  7. 18 Jul, 2017 2 commits
    • Eric Cano's avatar
      Created a helper function for retrieve queue selection. · be6d0b4d
      Eric Cano authored
      In order to be efficient, the data (tape status and queue sizes) is cached in memory.
      This function needed access to the catalogue (where the tape status is located).
      This in turn required passing the catalogue object to:
       - The garbage colletion functions for all object types.
       - The garbage collector object now keeps a reference to the catalogue.
       - The path to the catalogue credential file should now be passed to cta-objectstore-collect-orphaned-object
       - The OStoreDB also needs a reference to the catalogue in order to queue retrive requests.
      
       The garbage collection member function are now also being passed a log context, so the requirement for better
       log of object fate can also be fulfilled later. This in turn required the passing of a logger object to
       the object store and relative helper classes.
      
       Finally, a dummy catalogue class has been created to be used in unit tests.
      be6d0b4d
    • Julien Leduc's avatar
      Fixing the local ctaeos instance test in a 777 directory, so that we can · 31f3ac02
      Julien Leduc authored
      sort out tests that failed because of EOS instance
      31f3ac02
  8. 17 Jul, 2017 3 commits
  9. 14 Jul, 2017 9 commits
  10. 13 Jul, 2017 1 commit