Skip to main content
Log in

Garbage collection in object-oriented databases using transactional cyclic reference counting

  • Published:
The VLDB Journal Aims and scope Submit manuscript

Abstract.

Garbage collection is important in object-oriented databases to free the programmer from explicitly deallocating memory. In this paper, we present a garbage collection algorithm, called Transactional Cyclic Reference Counting (TCRC), for object-oriented databases. The algorithm is based on a variant of a reference-counting algorithm proposed for functional programming languages The algorithm keeps track of auxiliary reference count information to detect and collect cyclic garbage. The algorithm works correctly in the presence of concurrently running transactions, and system failures. It does not obtain any long-term locks, thereby minimizing interference with transaction processing. It uses recovery subsystem logs to detect pointer updates; thus, existing code need not be rewritten. Finally, it exploits schema information, if available, to reduce costs. We have implemented the TCRC algorithm and present results of a performance study of the implementation.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Author information

Authors and Affiliations

Authors

Additional information

Received January 1, 1998 / Accepted May 27, 1998

Rights and permissions

Reprints and permissions

About this article

Cite this article

Roy, P., Seshadri, S., Silberschatz, A. et al. Garbage collection in object-oriented databases using transactional cyclic reference counting. The VLDB Journal 7, 179–193 (1998). https://doi.org/10.1007/s007780050062

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s007780050062

Keywords

Navigation