A method is described in which, during execution of a distributed
transaction, a representation of persistent data stored at an entry in a
database is placed into a cache. Then, in response to an application's
decision that the entry should be removed from the database, the
representation is kept in the cache and marked as corresponding to an
entry that is to be removed from the database. Then, during execution of
the distributed transaction's two-phase commit protocol, the database is
informed that the entry is to be removed from the database if the
representation was marked as corresponding to an entry that is to be
removed from the database when the application completed its execution
for the distributed transaction.