Implementing global memory management in a workstation cluster
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Garbage collection: algorithms for automatic dynamic memory management
Garbage collection: algorithms for automatic dynamic memory management
An orthogonally persistent Java
ACM SIGMOD Record
The object database standard: ODMG 2.0
The object database standard: ODMG 2.0
The Java programming language (2nd ed.)
The Java programming language (2nd ed.)
An efficient object promotion algorithm for persistent object systems
Software—Practice & Experience
Fully Integrated Data Environments: Persistent Programming Languages, Object Stores, and Programmingenvironments
The Java Language Specification
The Java Language Specification
Orthogonally persistent object systems
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
Issues Raised by Three Years of Developing PJama: An Orthogonally Persistent Platform for Java
ICDT '99 Proceedings of the 7th International Conference on Database Theory
Orthogonal Persistence for Java? - A Mid-term Report
Proceedings of the 8th International Workshop on Persistent Object Systems (POS8) and Proceedings of the 3rd International Workshop on Persistence and Java (PJW3): Advances in Persistent Object Systems
Orthogonal Persistence for the Java[tm] Platform: Specification and Rationale
Orthogonal Persistence for the Java[tm] Platform: Specification and Rationale
PS-algol: an algol with a persistent heap
ACM SIGPLAN Notices
Hi-index | 0.00 |
The transient keyword of the Java™ programming language was originally introduced to prevent specific class fields from being stored by a persistence mechanism. In the context of orthogonal persistence, this is a particularly useful feature, since it allows the developer to easily deal with state that is external to the system. Such state is inherently transient and should not be stored, but instead re-created when necessary. Unfortunately, the Java Language Specification does not accurately define the semantics and correct usage of the transient keyword. This has left it open to misinterpretation by third parties and its current meaning is tied to the popular Java Object Serialisation mechanism. In this paper we explain why the currently widely-accepted use of the transient keyword is not appropriate in the context of orthogonal persistence, we present a more detailed definition for it, and we show how the handling of transient fields can be efficiently implemented in an orthogonally persistent system, while preserving the desired semantics.