Zhijun Fu created ARROW-2558: -------------------------------- Summary: [Plasma] avoid walk through all the objects when a client disconnects Key: ARROW-2558 URL: https://issues.apache.org/jira/browse/ARROW-2558 Project: Apache Arrow Issue Type: Improvement Components: Plasma (C++) Reporter: Zhijun Fu
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. -- This message was sent by Atlassian JIRA (v7.6.3#76005)