1. 01 Jul, 2019 1 commit
  2. 17 Jun, 2019 1 commit
  3. 01 Mar, 2019 1 commit
  4. 25 Feb, 2019 1 commit
    • Cedric CAFFY's avatar
      Queueing of Archive jobs now use the ContainerAlgorithms instead of the... · 7039f5f6
      Cedric CAFFY authored
      Queueing of Archive jobs now use the ContainerAlgorithms instead of the methods in the ArchiveQueue object
      Created a base class (interface) that allows to add and remove object(s) from the ownership of an Agent (implementation : AgentWrapper) or from an AgentReference (implementation : AgentReference)
      7039f5f6
  5. 22 Feb, 2019 1 commit
  6. 11 Feb, 2019 1 commit
  7. 22 Jan, 2019 1 commit
  8. 10 Dec, 2018 1 commit
    • Eric Cano's avatar
      Implemented promotion of repack requests from Pending to ToExpand · bc52524e
      Eric Cano authored
      This promotion is controlled so that only a limited number a requests
      are in the
      state ToExpand or Starting at any point in time. This ensures both the
      availabality
      of repack file requests to system while preventing an explosion of file
      level requests.
      
      Created a one-round popping from the container (algorithms) with status
      switching.
        - Used for repack requests switching from pendig to to expand
      
      Added ElementStatus to algorithms.
      
      Implemented promotion interface in Scheduler and OstoreDb. The actual
      decision is taken at
      the Scheduler level. The function itself is called by the
      RepackRequestManager.
      
      Promotion is tested in a unit test.
      
      Various code maintenance:
      Switched to "using"-based constructor inheritance.
      Fixed privacy of function in cta::range.
      bc52524e
  9. 01 Oct, 2018 2 commits
  10. 10 Sep, 2018 3 commits
  11. 05 Sep, 2018 1 commit
  12. 30 Aug, 2018 1 commit
    • Eric Cano's avatar
      Generalized queue type to "ToTransfer" "ToReport" "Failed". · 98281aa6
      Eric Cano authored
      "ToTransfer" are to be picked up by tape sessions.
      "ToReport" Includes both successes and failures to report, as the mechanism to report is the same.
         They will be handled by the reporter, which shares the single thread of the garbage collector.
      "Failed" Will be a (possibly non-queue) container which will contain the failed requests. The operators
         will be able to examine, relaunch or abandon those requests.
      
      The states and lifecycles of the requests have been reworked to reflect this lifecycle too.
      The container algorithmes have been adapted to handle the multiple queue/container types.
      98281aa6
  13. 10 Aug, 2018 1 commit
  14. 23 Jul, 2018 1 commit
  15. 26 Jun, 2018 1 commit
  16. 20 Jun, 2018 1 commit
  17. 06 Feb, 2018 1 commit
  18. 19 Jan, 2018 1 commit
  19. 19 Dec, 2017 1 commit
  20. 26 Oct, 2017 1 commit
  21. 03 Oct, 2017 1 commit
  22. 25 Sep, 2017 1 commit
  23. 15 Aug, 2017 1 commit
  24. 18 Jul, 2017 1 commit
    • 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
  25. 29 Jun, 2017 2 commits
  26. 28 Jun, 2017 1 commit
  27. 20 Jun, 2017 3 commits
  28. 19 Jun, 2017 1 commit
  29. 12 Apr, 2017 1 commit
    • Eric Cano's avatar
      cta/CTA#46: Garbage collection improvements · e446e939
      Eric Cano authored
      Implemented Agent::garbageCollect()
      Made AgentWatchdog fetch the timout from the agent object.
      Fixed unconditional time tounter reset in AgentWatchdog::checkAlive()
      Fixed missing log for garbageCollection.
      Added utility (cta-objectstore-unfollow-agent) to mark agents as not followed when they get orphaned. This utility detects looping ownerships (two garbage coolectors watch each other and both die synchronously). This utility is not packaged.
      Various log improvements.
      e446e939
  30. 03 Apr, 2017 1 commit
    • Eric Cano's avatar
      cta/CTA#46: Adding garbage collection for object store structures: · cfe8f58b
      Eric Cano authored
      Created a garbage collector subprocess for the drive daemon.
      Created a AgentHeartbeat thread and added it to frontend, drive subprocess and GC subprocess.
      Fixed logs and drive subprocess.
      Renamed common/threading/Threading.[hc]pp to Thread.[hc]pp as there is only one class left in this file.
      cfe8f58b
  31. 16 Jan, 2017 1 commit
  32. 16 Nov, 2016 1 commit
  33. 26 Oct, 2016 1 commit
  34. 15 Aug, 2016 1 commit
    • Eric Cano's avatar
      Split the Agent class into AgentReference and Agent. · 390ccab7
      Eric Cano authored
      Agent becomes a usual class, like any other in the object store.
      Object name generation (agent's and others) is now handled in the separate AgentReference.
      The previous situation created race conditions.
      390ccab7