Class: STANDARD-TRANSACTION

Slots

  • ID
  • DIRTY-OBJECTS

    A hash-table (from id to object) containing all objects of which the slot changes have not been written to disk yet.

  • DIRTY-QUEUE

    A queue with the ids of all objects that have been created or modified since the last commit. The queue is in least-recently-dirtied-first order. During a commit, the objects are written to disk in the same order (this is necessary to guarantee that the garbage collector never sees an id of an object that doesn't exist on disk yet.

Hierachy

Precedence List

Source

(defclass standard-transaction (transaction)
  ((id :initarg :id :reader transaction-id)
   ;; Dirty objects
   (dirty-objects :initarg :dirty-objects
                  :initform (make-hash-table)
                  :reader dirty-objects
                  :documentation "A hash-table \(from id to object)
containing all objects of which the slot changes have not been written
to disk yet.")
   (dirty-queue :initarg :dirty-queue
                :initform (make-instance 'queue)
                :reader dirty-queue
                :documentation "A queue with the ids of all objects
that have been created or modified since the last commit.  The queue
is in least-recently-dirtied-first order.  During a commit, the
objects are written to disk in the same order \(this is necessary to
guarantee that the garbage collector never sees an id of an object
that doesn't exist on disk yet.")))
Source Context