Towards Scalable and Recoverable Object Evolution for the PJama Persistent Platform

Two developing technologies, namely Java Platform based on the Solaris Research VM and Sphere persistent store, have been recently combined to provide a new version of orthogonally persistent Java - PJama 1 . Having these powerful technologies, the developers were given an excellent window of opportunity to provide evolution support as a standard, scalable and reliable mechanism. This paper describes the issues arising during the design of the store level foundation for the evolution technology, and our solutions. We have achieved our goals of making evolution scalable and recoverable, yet retaining the unchanged view of the old object world during object conversion, at a price of minor constraints to the semantics of custom evolution (conversion) code. A way to remove this constraint is proposed.