Re: [WIP]Vertical Clustered Index (columnar store extension) - take2
Timur Magomedov <t.magomedov@postgrespro.ru>
From: Timur Magomedov <t.magomedov@postgrespro.ru>
To: Peter Smith <smithpb2250@gmail.com>,
"pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Cc: Tomas Vondra <tomas@vondra.me>, "Aya Iwata (Fujitsu)" <iwata.aya@fujitsu.com>, Japin Li <japinli@hotmail.com>, shveta malik <shveta.malik@gmail.com>
Date: 2025-08-15T17:45:10Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Mark ItemPointer arguments as const throughout
- e1ac846f3d28 19 (unreleased) cited
-
Reorganize GUC structs
- a13833c35f9e 19 (unreleased) cited
-
Eliminate XLOG_HEAP2_VISIBLE from vacuum phase III
- add323da40a6 19 (unreleased) cited
-
Update various forward declarations to use typedef
- d4d1fc527bdb 19 (unreleased) cited
-
Pathify RHS unique-ification for semijoin planning
- 24225ad9aafc 19 (unreleased) cited
-
Revert "Don't lock partitions pruned by initial pruning"
- 1722d5eb05d8 18.0 cited
-
For inplace update, send nontransactional invalidations.
- 243e9b40f1b2 18.0 cited
-
Remove nearly-unused SizeOfIptrData macro.
- 8023b5827fba 10.0 cited
Attachments
- 0001-Fixed-comment-and-guard-name-in-vci_pg_copy.h.patch (text/x-patch) patch 0001
- 0002-Removed-vci_set_merge_and_copy_trans_funcs.patch (text/x-patch) patch 0002
- 0003-Replaced-linear-search-by-switch-case.patch (text/x-patch) patch 0003
- 0004-Removed-worker-name-check-in-lock.c.patch (text/x-patch) patch 0004
On Thu, 2025-08-14 at 11:23 +1000, Peter Smith wrote: > Here are the latest v18* patches. > Hi Peter! I've reworked my recent patch [1] so it is now based on v18 and is divided into several simpler patches. Here they are plus one additional patch. 0001-Fixed-comment-and-guard-name-in-vci_pg_copy.h.patch Looks like vci_pg_copy.h was renamed from vci_numeric.h but file name comment and define guard name were not updated. Fixed it. 0002-Removed-vci_set_merge_and_copy_trans_funcs.patch Found that vci_set_merge_and_copy_trans_funcs() is not used anywhere, removed it alogn with the code that was only called inside it. trans_funcs_table[] now only contains single transfn_oid field, others (unused) are removed. 0003-Replaced-linear-search-by-switch-case.patch Replaced linear search inside trans_funcs_table array to more optimal switch-case. 0004-Removed-worker-name-check-in-lock.c.patch This is one I'm not sure about. Found that changes in Postgres core lock.c file check for "backend=" substring in background worker name. There is also a comment in vci_ros_daemon.c mentioning bgw_name checks of LockAquire(). Names don't match however. So as far as I understand the check for "backend=" in name is always false since no code in VCI sets bgw_name to something similar. This is either forgotten feature that can be easily fixed by removing bgw_name checks, either some bug, either my misunderstanding. For the first case, here is a patch that removes bgw_name checks in lock.c. It makes core patch a bit smaller and not touching lock.c at all (Yay!). [1] https://www.postgresql.org/message-id/8beac6e8a01971b22ccf0f2e2a8eb12a78e5a7ac.camel%40postgrespro.ru -- Regards, Timur Magomedov