A current transaction accessing a data object is disclosed. Accessing
could include determining that previous transaction information about a
previous transaction is associated with the data object, determining that
the previous transaction no longer needs a lock on the data object, and
associating current transaction information about the current transaction
with the data object. Accessing could include determining that an
embedded lock is active, copying the embedded lock to a shared lock
region, invalidating the embedded lock, and queuing the current
transaction in the shared lock region.