Re: Compress prune/freeze records with Delta Frame of Reference algorithm

From: Evgeny Voropaev <evgeny(dot)voropaev(at)tantorlabs(dot)com>
To: Andrey Borodin <x4mmm(at)yandex-team(dot)ru>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Compress prune/freeze records with Delta Frame of Reference algorithm
Date: 2026-03-20 10:05:41
Message-ID: 8b8eefc8-7e96-411c-813f-636af38966f9@tantorlabs.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello Andrey,

> Great idea and nice library for DFoR! Thank you for your attention.
I wish the patch would be useful.

All your proposals and recommendations have been implemented in v02.
Also the meson settings has been updated for supporting the new
developments.

> Perhaps, first thing to start is to fix CI failures

Once meson is fixed, tests should pass successfully now. Looking
forward to this.

> As a minor nit: do not use stdlib assert(), use capital Assert()

Done.

> Are we 100% sure qsort() won't allocate something anywhere?
> sort_template.h seems to be allocation-free, but just in case...

No guarantees from libraries or from descriptions about qsort's
behaviour regarding dynamic memory allocation. So, the qsort is just
substituted with the sort_template, which we trust, and as you
proposed.

Waiting for tests to have passed, and then I hope we could move further.

Best regards, Evgeny Voropaev.

Attachment Content-Type Size
v02-0001-Implement-vect-and-uniqsortvect-containers-and-b.patch text/x-patch 95.5 KB
v02-0002-Implement-Delta-Frame-of-Reference-compression.patch text/x-patch 41.9 KB
v02-0003-Use-Delta-Frame-of-Reference-DFoR-to-compress-pr.patch text/x-patch 32.7 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message zengman 2026-03-20 10:14:52 Re: [PATCH] rewriteGraphTable: Fix missing RTEs in FROM clause by setting inFromCl=true
Previous Message Henson Choi 2026-03-20 09:54:20 Re: [PATCH] rewriteGraphTable: Fix missing RTEs in FROM clause by setting inFromCl=true