Stripe the in-memory size and count store

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Currently, the in memory structure storing the sizes and counts is guarded by one single mutex. Writes to all collections will need to serialize there. To reduce contention, we would want to divide the in-memory store into 16 stripes. The least significant 4 bits of the UUID will be used to map to the stripe number.

      The design of bucket catalog stripes can be used as an example.

      The existing APIs should be updated accordingly with the striped in-memory store. Util functions should be created accordingly to abstract away the indirect access.

            Assignee:
            Unassigned
            Reporter:
            Yuhong Zhang
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: