Patent ID: 11914615
Assignee: SAP SE
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 16:
17. One or more computer-readable storage media storing computer-executable instructions for execution on one or more computing devices to perform operations for managing shared read-only objects in a hybrid distributed database system, the operations comprising:
storing in at least a first data structure, for each of a plurality of shared read-only objects, a “deleted at” value for storing a first global commit id of a delete transaction that deleted the shared read-only object, the delete transaction including a performance of a global commit to commit a received request to delete the shared read-only object;
storing, for each of a plurality of secondary nodes, a respective second global commit id that the secondary node is synchronized to;
storing, for each of the plurality of shared read-only objects, an indication of which secondary nodes are reading which shared read-only objects;
storing, for each of the plurality of shared read-only objects, a reference count indicating a number of active read transactions for the shared read-only object;
identifying which of the plurality of shared read-only objects can be garbage collected by evaluating, for each of one or more of the plurality of shared read-only objects, a plurality of garbage collection rules comprising:
when the “deleted at” value for the shared read-only object indicates that the shared read-only object is readable, retaining the shared read-only object;
otherwise, when the reference count is not zero for the shared read-only object, retaining the shared read-only object;
otherwise, when any secondary node is reading the shared read-only object, retaining the shared read-only object;
otherwise, when the respective second global commit id for any secondary node is less than the “deleted at” value for the shared read-only object, retaining the shared read-only object;
otherwise, identifying the shared read-only object for garbage collection; and

garbage collecting any identified shared read-only objects.