Det visar sig att lösningen är mycket enklare än man först trodde, tack vare Postgres Systeminformationsfunktioner .
txid_current()
kan användas i en trigger för att tilldela en postsrowversion
.txid_snapshot_min(txid_current_snapshot())
kan användas för att få minsta aktiva transaktion på samma sätt som en SQL Server-användare kan användamin_active_rowversion()
.
Det bästa är att dessa är 64-bitars, permanenta, som inte är föremål för dammsugning:
Postgres är verkligen fantastiskt.