Skip to content
This repository has been archived by the owner on Feb 8, 2024. It is now read-only.

rgw_sal_motr, motr_gc: [CORTX-32689] Integrate locking mechanism with Motr GC #389

Merged
merged 7 commits into from
Aug 12, 2022

Commits on Aug 10, 2022

  1. rgw_sal_motr, motr_gc: [CORTX-33148] add MotrGC, MotrGC::GCWorker inf…

    …ra code (Seagate#356)
    
    * rgw_sal_motr, motr_gc: [CORTX-33148] add MotrGC, MotrGC::GCWorker infra code
    
    Behaviour
    - With Garbage Collector enabled, MotrGC will have GC indexes & GC worker threads.
    - GC worker threads will run for the configured max processing time and then
       will wait for the configured time between two consecutive runs.
    
    Additions/Changes
    - Add the Garbage Collector infrastructure to support the start & stop of worker threads.
      - MotrGC class with the interfaces to initialize(), start(), stop() and finalize().
      - GCWorker class with entry() and stop() methods.
    - Refactor Initialization of MotrStore
      - add setter methods to configure MotrStore
     - add initialize() method to call initialization of all the other components
       eg. MetadataCache, GC, (in future LC, QuotaHandler), etc.
    
    Signed-off-by: Sumedh Anantrao Kulkarni <sumedh.a.kulkarni@seagate.com>
    sumedhak27 authored and DPG17 committed Aug 10, 2022
    Configuration menu
    Copy the full SHA
    b65ba6b View commit details
    Browse the repository at this point in the history
  2. GC thread processing logic (Seagate#371)

    The GC thread will aquire GC index and process the object entries for
    deletion either upto the count governed by "rgw_gc_max_trim_chunk" or
    time allowed by "rgw_gc_processor_max_time".
    
    Signed-off-by: Sachin Punadikar <sachin.punadikar@seagate.com>
    Sachin Punadikar authored and DPG17 committed Aug 10, 2022
    Configuration menu
    Copy the full SHA
    93afbcd View commit details
    Browse the repository at this point in the history
  3. motr_sync: [CORTX-33691] Define and implement rgw_motr synchronization (

    Seagate#373)
    
    * rgw_sal_motr: [CORTX-33691] Defines abstract synchronization primitives
    and implements it for Motr GC across multiple RGW instances.
    
    Signed-off-by: Dattaprasad Govekar <dattaprasad.govekar@seagate.com>
    
    * motr_sync_impl: [CORTX-33691] update lock() & remove_lock() methods
    
    Update and refactor the MotrLock::lock() and MotrKVLockProvider::remove_lock()
    methods.
    
    Signed-off-by: Sumedh Anantrao Kulkarni <sumedh.a.kulkarni@seagate.com>
    
    Co-authored-by: Dattaprasad Govekar <dattaprasad.govekar@seagate.com>
    sumedhak27 and DPG17 committed Aug 10, 2022
    Configuration menu
    Copy the full SHA
    b1d0734 View commit details
    Browse the repository at this point in the history
  4. rgw_sal_motr, motr_gc: [CORTX-32689] Implement MotrGC::enqueue() (Sea…

    …gate#379)
    
    * rgw_sal_motr, motr_gc: [CORTX-32689] Implement MotrGC::enqueue()
    
    * Push {0_ObjTag: motr_gc_obj_info} and {1_ExpiryTime: motr_gc_obj_info}
      entry to the gc queues, i.e. motr dix.
    * Call gc->enqueue() method on simple object delete request without
      actually deleting the obj.
    
    Signed-off-by: Sumedh Anantrao Kulkarni <sumedh.a.kulkarni@seagate.com>
    
    * motr_gc: [CORTX-32689] Implement MotrGC::list() function
    
    MotrGC::list() goes through every gc queue and lists the adds the
    pending delete requests in resultant vector.
    Interface to list objs using admin tool or rest api's is yet
    to be developed.
    
    Signed-off-by: Sumedh Anantrao Kulkarni <sumedh.a.kulkarni@seagate.com>
    sumedhak27 authored and DPG17 committed Aug 10, 2022
    Configuration menu
    Copy the full SHA
    5e3a361 View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2022

  1. motr_gc: [CORTX-32689] Support simple object deletion with GC in RGW+…

    … Motr
    
    - Integrate locking code changes in GC worker thread.
    
    Signed-off-by: Dattaprasad Govekar <dattaprasad.govekar@seagate.com>
    DPG17 committed Aug 11, 2022
    Configuration menu
    Copy the full SHA
    23ee1ce View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2022

  1. Configuration menu
    Copy the full SHA
    29746e0 View commit details
    Browse the repository at this point in the history
  2. motr_gc: [CORTX-32689] Support simple object deletion with GC in RGW+…

    … Motr
    
    - Integrate locking code changes in GC worker thread
    
    Signed-off-by: Dattaprasad Govekar <dattaprasad.govekar@seagate.com>
    DPG17 committed Aug 12, 2022
    Configuration menu
    Copy the full SHA
    0506335 View commit details
    Browse the repository at this point in the history