LiveCompare 3.2.0 release notes v3

Released: 3 August 2026

LiveCompare 3.2.0 includes the following new features, enhancements, bug fixes, and other changes:

Features

DescriptionAddresses
You can now enable server-side block hashing, an optional optimization for the block_hash comparison algorithm. Instead of transferring every row's hash back to LiveCompare for comparison, each database server computes and returns a single aggregate hash per row buffer. For buffers that match — the common case when databases are largely in sync — this collapses potentially thousands of per‑row transfers into one, reducing network payload and round-trips. The improvement is most noticeable on multi-node deployments compared across a WAN. For more information, see server_side_block_hash.

Enhancements

DescriptionAddresses
Improved the reliability of resuming an interrupted comparison session by removing unused state-tracking code paths in the round resume and checkpoint logic.

Bug Fixes

DescriptionAddresses
Fixed an issue whereby declarative partitioned tables were silently skipped when comparing in BDR mode. LiveCompare now expands partition roots to their leaf partitions and resolves replication set membership correctly, so partitioned tables are included in the comparison.
Fixed an issue whereby a comparison using the block_hash algorithm could stall on the same data buffer indefinitely instead of advancing to fetch new data, causing the reported row count to climb far beyond the actual data volume.
Fixed an issue whereby a cached block digest could be returned for the wrong data buffer after the underlying memory was reused, causing LiveCompare to report a false match and silently miss a divergent block.
Fixed an issue whereby comparing a table with a LOB column (BLOB, CLOB, NCLOB, or BYTEA) under a non-default consensus_mode could generate a fix statement that exceeded Postgres' query size limit, crashing the comparison. LiveCompare now aborts the affected round with a clear error message instead.