Re: [WIP]Vertical Clustered Index (columnar store extension) - take2
Peter Smith <smithpb2250@gmail.com>
From: Peter Smith <smithpb2250@gmail.com>
To: Japin Li <japinli@hotmail.com>
Cc: "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>,
Tomas Vondra <tomas@vondra.me>, "Aya Iwata (Fujitsu)" <iwata.aya@fujitsu.com>,
Timur Magomedov <t.magomedov@postgrespro.ru>, shveta malik <shveta.malik@gmail.com>
Date: 2025-08-14T01:39:21Z
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
On Tue, Aug 12, 2025 at 1:48 PM Japin Li <japinli@hotmail.com> wrote: ... > 1. > PFA the other typos. > Fixed in v18. > 2. > I found it skip vci query context initialization in vci_intialize_query_context() > if full page writes is disabled, Could you explain why we need full page write > enabled for VCI? > TODO > 3. > Both vci_ros.h and vci_ros.c have a comment about accessing the VCI main relation > header, but they are slightly different. Could we sync them and keep only one? > > It seems the comment is outdated, as the functions vci_KeepReadingMainRelHeader() > and vci_KeepWritingMainRelHeader() do not exist in the current VCI implementation. > TODO. I agree that there should be only one comment, and outdated function references need to be fixed. > 4. > +/** > + * This function is assumed when the VCI index is newly built, and > + * it converts all the data in the relation of PostgreSQL into ROS. > + */ > +uint64 > +vci_ConvertWos2RosForBuild(Relation mainRel, > + Size workareaSize, > + IndexInfo *indexInfo) > ... > + result = (uint64) table_index_build_scan(comContext.heapRel, > + mainRel, > + indexInfo, > + true, /* allow syncscan */ > + true, > + vci_build_callback, > + (void *) &comContext, NULL) > > Perhaps we can use a double return type to avoid type casting since > other places also use double. Fixed in v18. ====== Kind Regards, Peter Smith. Fujitsu Australia