Using the Lock Manager to Choose Timestamps

  • David Lomet
  • Richard Snodgrass
  • Christian Jensen

IDEAS Conference |

Published by IEEE Computer Society

Our goal is to support transaction-time
functionality that enables the coexistence of ordinary,
non-temporal tables with transaction-time tables. In
such a system, each transaction updating a
transaction-time or snapshot table must include a
timestamp for its updated data that correctly reflects
the serialization order of the transactions, including
transactions on ordinary tables. A serious issue is
coping with SQL CURRENTTIME functions, which
should return a time consistent with a transaction’s
timestamp and serialization order. Prior timestamping
techniques cannot support such functions with this
desired semantics. We show how to compatibly extend
conventional database functionality for transactiontime
support by exploiting the database system lock
manager and by utilizing a spectrum of optimizations.