Issues Raised by Three Years of Developing PJama: An Orthogonally Persistent Platform for Java™

Malcolm Atkinson, Mick Jordan

Research output: Chapter in Book/Report/Conference proceedingChapter

Abstract

Orthogonal persistence is based on three principles that have been understood for nearly 20 years. PJama is a publically available prototype of a Java platform that supports orthogonal persistence. It is already capable of supporting substantial applications.

The experience of applying the principles of orthogonal persistence to the Java programming language is described in the context of PJama. For example, issues arise over achieving orthogonality when there are classes that have a special relationship with the Java Virtual Machine. The treatment of static variables and the definition of reachability for classes and the handling of the keyword transient also pose design problems. The model for checkpointing the state of a computation, including live threads, is analyzed and related to a transactional approach. The problem of dealing with state that is external to the PJama environment is explained and the solutions outlined. The difficult problem of system evolution is identified as a major barrier to deploying orthogonal persistence for the Java language.

The predominant focus is on semantic issues, but with concern for reasonably efficient implementation. We take the opportunity throughout the paper and in the conclusions to identify directions for further work.

Original languageEnglish
Title of host publicationDatabase Theory — ICDT’99
Subtitle of host publication7th International Conference Jerusalem, Israel, January 10–12, 1999 Proceedings
EditorsCatriel Beeri, Peter Buneman
Place of PublicationBerlin, Heidelberg
PublisherSpringer
Pages1-30
Number of pages30
ISBN (Electronic)978-3-540-49257-3
ISBN (Print)978-3-540-65452-0
DOIs
Publication statusPublished - 1999

Publication series

NameLecture Notes in Computer Science
PublisherSpringer Berlin Heidelberg
Volume1540
ISSN (Print)0302-9743

Fingerprint

Dive into the research topics of 'Issues Raised by Three Years of Developing PJama: An Orthogonally Persistent Platform for Java™'. Together they form a unique fingerprint.

Cite this