Glossary

activation

Moving an object from the GHOST state to the UPTODATE state, load its pickled data from its jar.

data manager

The object responsible for storing and loading an object’s pickled data in a backing store. Also called a jar.

deactivation

Moving an object from the UPTODATE state to the GHOST state, discarding its pickled data.

ghost

An object whose pickled data has not yet been loaded from its jar. Accessing or mutating any of its attributes causes that data to be loaded, which is referred to as activation.

invalidation

Moving an object from either the UPTODATE state or the CHANGED state to the GHOST state, discarding its pickled data.

jar

Alias for data manager: short for “pickle jar”, because it traditionally holds the pickled data of persistent objects.

object cache

An MRU cache for objects associated with a given data manager.

object id

The stable identifier that uniquely names a particular object. This is analogous to Python’s id, but unlike id, object ids remain the same for a given object across different processes.

pickled data

The serialized data of a persistent object, stored in and retrieved from a backing store by a data manager.

volatile attribute

Attributes of a persistent object which are not captured as part of its pickled data. These attributes thus disappear during deactivation or invalidation.