Re: pgsql: reindexdb: Add the index-level REINDEX with multiple jobs

From: Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Alexander Korotkov <aekorotkov(at)gmail(dot)com>
Cc: Alexander Korotkov <akorotkov(at)postgresql(dot)org>, pgsql-hackers(at)lists(dot)postgresql(dot)org, Maxim Orlov <orlovmg(at)gmail(dot)com>, Svetlana Derevyanko <s(dot)derevyanko(at)postgrespro(dot)ru>
Subject: Re: pgsql: reindexdb: Add the index-level REINDEX with multiple jobs
Date: 2025-03-10 11:12:33
Message-ID: 202503101112.ozklxnrfw4dr@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

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.

--
Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/
"Puedes vivir sólo una vez, pero si lo haces bien, una vez es suficiente"

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message Alexander Korotkov 2025-03-10 11:47:56 pgsql: Use extended stats for precise estimation of bucket size in hash
Previous Message Peter Eisentraut 2025-03-10 10:43:12 pgsql: Remove support for temporal RESTRICT foreign keys

Browse pgsql-hackers by date

  From Date Subject
Next Message Tomas Vondra 2025-03-10 11:17:58 Re: Changing the state of data checksums in a running cluster
Previous Message Zhijie Hou (Fujitsu) 2025-03-10 11:07:23 RE: Selectively invalidate caches in pgoutput module