(defmethod find-conflicting-transaction
(object-id
(cache standard-cache)
(current-transaction standard-transaction))
;; EFFICIENCY: We need to consider all transactions, because the
;; transactions are in a hash-table. If we use a container that's
;; ordered by creation time (like a btree), we only need to consider
;; transactions that are younger than the given transaction.
(loop for transaction being the hash-value of (transactions cache)
thereis (and (not (eql transaction current-transaction))
(transaction-older-p transaction current-transaction)
(transaction-changed-object transaction object-id)
transaction)))
Source Context