Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-5329

Transaction IDs in PostgreSQL transaction metadata topics subject to wraparound

XMLWordPrintable

      Over at Materialize we realized that we cannot deduplicate Debezium events in constant space—this time with the transaction metadata topic. For historical context, see DBZ-2911, which covered the case of O(1) space deduplication for data topics.

      The problem is that the transaction ID for PostgreSQL databases is a 32-bit integer that wraps around. That means we cannot simply track the highest transaction ID that we've seen, and discard any new transactions with a smaller transaction ID. 

      Instead, we'd need the transactional metadata topic to expose the end LSN of the transaction. The end LSN is a 64-bit integer and so it never wraps around.

      Is that something that would be possible to add? 

      cc jpechane 

              vjuranek@redhat.com Vojtech Juranek
              benesch Nikhil Benesch (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: