Documentation
Write object ids of all dirty objects to the commit file, so
recovery can do its job if this transaction never completes.
Source
(defun create-commit-file (transaction cache)
"Write object ids of all dirty objects to the commit file, so
recovery can do its job if this transaction never completes."
(with-open-file (stream (commit-filename cache)
:direction :output
:if-exists :supersede
:if-does-not-exist :create
:element-type '(unsigned-byte 8))
(serialize (transaction-id transaction) stream)
(serialize (hash-table-count (dirty-objects transaction)) stream)
(loop for object-id being the hash-key of (dirty-objects transaction)
do (serialize object-id stream))))
Source Context