On Mon, Mar 10, 2025 at 1:12 PM Álvaro Herrera <alvhe...@alvh.no-ip.org> wrote:
> On 2025-Mar-09, Alexander Korotkov wrote:
>
> > After second thought it's not so hard to fix.  The attached patch does
> > it by putting REINDEX commands related to the same table into a single
> > SQL statement.  Possibly, that could be better than revert given we
> > need to handle compatibility.  What do you think?
>
> Oh, this is an egg of Columbus solution, I like it.  It seems to work as
> intended on a quick test.  Please add some commentary to run_reindex_command.
>
> Maybe another, possibly better way to do this would be to use libpq
> pipeline mode, sending all the commands for a table in one pipeline
> instead of a single command.  The advantage of this would be that
> server-side log entries for each command would be separate, and they
> wouldn't appear clumped together in pg_stat_activity and so on.
> However, this would require more invasive changes, so it might be better
> to leave that for a future project -- it's certainly a harder sell for
> such a change to be backpatched.  So I'm +1 on your current patch for 17
> and master.

Thank you for your feedback!  I also think that pipelining would be a
better options, but it's too invasive for backpatching. I've written
comments for gen_reindex_command() and run_reindex_command().  I'm
going to push this patch to master and 17 if no objections.

------
Regards,
Alexander Korotkov
Supabase

Attachment: v2-0001-reindexdb-Fix-the-index-level-REINDEX-with-multip.patch
Description: Binary data

Reply via email to