postgresql/src/backend/bootstrap
Álvaro Herrera caec9d9fad
Allow index_create to suppress index_build progress reporting
A future REPACK patch wants a way to suppress index_build doing its
progress reports when building an index, because that would interfere
with repack's own reporting; so add an INDEX_CREATE_SUPPRESS_PROGRESS
bit that enables this.

Furthermore, change the index_create_copy() API so that it takes flag
bits for index_create() and passes them unchanged.  This gives its
callers more direct control, which eases the interface -- now its
callers can pass the INDEX_CREATE_SUPPRESS_PROGRESS bit directly.  We
use it for the current caller in REINDEX CONCURRENTLY, since it's also
not interested in progress reporting, since it doesn't want
index_build() to be called at all in the first place.

One thing to keep in mind, pointed out by Mihail, is that we're not
suppressing the index-AM-specific progress report updates which happen
during ambuild().  At present this is not a problem, because the values
updated by those don't overlap with those used by commands other than
CREATE INDEX; but maybe in the future we'll want the ability to suppress
them also.  (Alternatively we might want to display how each
index-build-subcommand progresses during REPACK and others.)

Author: Antonin Houska <ah@cybertec.at>
Author: Álvaro Herrera <alvherre@kurilemu.de>
Reviewed-by: Mihail Nikalayeu <mihailnikalayeu@gmail.com>
Discussion: https://postgr.es/m/102906.1773668762@localhost
2026-04-05 13:34:08 +02:00
..
.gitignore Build all Flex files standalone 2022-09-04 12:09:01 +07:00
bootparse.y Include error location in errors from ComputeIndexAttrs(). 2026-01-04 14:16:20 -05:00
bootscanner.l Update copyright for 2026 2026-01-01 13:24:10 -05:00
bootstrap.c Allow index_create to suppress index_build progress reporting 2026-04-05 13:34:08 +02:00
Makefile Remove distprep 2023-11-06 15:18:04 +01:00
meson.build Update copyright for 2026 2026-01-01 13:24:10 -05:00