EPO‐R: An efficient garbage collection scheme for long‐term transactions

Rina Onishi,Takashi Hoshino,Hideyuki Kawashima
DOI: https://doi.org/10.1002/cpe.8134
2024-05-05
Concurrency and Computation Practice and Experience
Abstract:Summary This article proposes EPO‐R, which is an efficient garbage collection scheme designed for multi‐version concurrency control (MVCC) protocols. MVCC generates a version for each update operation, and it can exhaust physical memory for dynamically changing environments such as IoT payments. Eager pruning of obsolete versions (EPO) is a novel garbage collection technique for long‐term transactions. We found room for improvement in EPO, which triggers reclamation invocation. EPO is triggered for each write operation, and it wastes CPU resources. The proposed method EPO‐R is triggered on a read operation to address this issue. The result of experiments with 64 CPU cores and workloads with the combination of short‐term and long‐term transactions demonstrated that EPO‐R exhibited 6.3 times higher throughput than that of EPO. The reason for this can be explained by analyzing the number of unreclaimable versions.
computer science, theory & methods, software engineering
What problem does this paper attempt to address?