Package dev.frostlake.transaction
Class WriteSetSavepoint
java.lang.Object
dev.frostlake.transaction.WriteSetSavepoint
A COPY-ON-FIRST-MUTATION statement savepoint over a
TransactionWriteSet. The former
savepoint copied the ENTIRE write set per statement — a transaction that had loaded k rows paid
O(k) pointer copies for every later statement, however few tables that statement touched. This
one records a table's pre-images only when the statement FIRST mutates that table, so rollback
restores exactly the touched entries and untouched tables are never copied at all.
A null pre-image list/map/set means the table had NO entry of that kind before the statement (restore removes the entry). The lock map is snapshotted eagerly — it holds one entry per touched table, never per row.
-
Method Summary