On 02/12/2025 16:11, Alexander Korotkov wrote:
I'd like to raise the question about compression again.  You have
fairly criticized non-deterministic compression, but what do you think
about deterministic one that I've proposed [1].  I understand that
multixact offsets are subject of growth and their limit is not
removed.  However, it's still several extra gigabytes for multixact
offsets, which we could save.

It felt overly complicated to my taste. And decoding/encoding the whole chunk on every access seems expensive. Maybe it's cheap enough that it doesn't matter in practice, but some performance testing would at least be in order. But I'd love to find a simpler scheme to begin with.

Storing one "base" offset per page, as Maxim did in [1], feels about right to me. Except for the non-deterministic nature of how it gets set in that patch, and what I referred to as a "frighteningly clever encoding scheme".

Perhaps we could set the base offset in ExtendMultiXactOffset() already?

[1] https://www.postgresql.org/message-id/CACG%3DezbPUASDL1eJ%2Bc-ZkJMwRPukvp3EL0q1vSUa1h%2BfnX8y3g%40mail.gmail.com

- Heikki



Reply via email to