On 04/11/2026 23:30, Narek Galstyan wrote:
Extensions in the wild (e.g. pgvector here <https://github.com/
pgvector/pgvector/blob/b0665dca96f0a186d438adbd1c35945d71da5490/src/
ivfbuild.c#L1047-L1049> and a few private ones I know)
assume GenericXLog does not log the init fork and they manually log
the init fork with logic similar to the linked pgvector ivfflat.
This means that for pgvector ivfflat, the potentially substantial
ivfflat init fork (~8MB for lists=1000, dim = 1536) will be WAL-
logged twice. This is pretty harmless. Still, probably worth
addressing in pgvector. Notably, pgvector hnsw does not have the
double logging problem because it does not use GenericXLog for the
initial build.
Hmm, ok, that gives me pause. Perhaps best to do this in master only,
and use your fix for stable branches.
- Heikki