On Mon, Sep 9, 2024 at 4:42 PM Tom Lane <t...@sss.pgh.pa.us> wrote: > > Masahiko Sawada <sawada.m...@gmail.com> writes: > > When do we set the byte on the primary server? If it's the first time > > to use the GIN index, secondary servers would have to wait for the > > primary to use the GIN index, which could be an unpredictable time or > > it may never come depending on index usages. Probably we can make > > pg_upgrade set the byte in the meta page of GIN indexes that use the > > gin_trgm_ops. > > Hmm, perhaps. That plus set-it-during-index-create would remove the > need for dynamic update like I suggested. So very roughly the amount > of complexity would balance out.
Yes, I think your set-it-during-index-create would be necessary. > Do you have an idea for how we'd get > this to happen during pg_upgrade, exactly? What I was thinking is that we have "pg_dump --binary-upgrade" emit a function call, say "SELECT binary_upgrade_update_gin_meta_page()" for each GIN index, and the meta pages are updated when restoring the schemas. Regards, -- Masahiko Sawada Amazon Web Services: https://aws.amazon.com