Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-2558

[Plasma] avoid walk through all the objects when a client disconnects

    Details

      Description

      Currently plasma stores list-of-clients in ObjectTableEntry, which is used to track which clients are using a given object, this serves for two purposes:

      • If an object is in use.
      • If the client trying to abort an object is the one who created it.

      A problem with list-of-clients approach is that when a client disconnects, we need to walk through all the objects and remove the client pointer from the list for each object.

      Instead, we could add a reference count in ObjectTableEntry, and store list-of-object-ids in client structure. This could both goals that the original approach is targeting, while when a client disconnects, it just walk through its object-ids and dereference each ObjectTableEntry, there's no need to walk through all objects.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                zhijunfu Zhijun Fu
                Reporter:
                zhijunfu Zhijun Fu
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 2h
                  2h