postgresql/contrib
Alvaro Herrera ab0dfc961b Report progress of CREATE INDEX operations
This uses the progress reporting infrastructure added by c16dc1aca5,
adding support for CREATE INDEX and CREATE INDEX CONCURRENTLY.

There are two pieces to this: one is index-AM-agnostic, and the other is
AM-specific.  The latter is fairly elaborate for btrees, including
reportage for parallel index builds and the separate phases that btree
index creation uses; other index AMs, which are much simpler in their
building procedures, have simplistic reporting only, but that seems
sufficient, at least for non-concurrent builds.

The index-AM-agnostic part is fairly complete, providing insight into
the CONCURRENTLY wait phases as well as block-based progress during the
index validation table scan.  (The index validation index scan requires
patching each AM, which has not been included here.)

Reviewers: Rahila Syed, Pavan Deolasee, Tatsuro Yamada
Discussion: https://postgr.es/m/20181220220022.mg63bhk26zdpvmcj@alvherre.pgsql
2019-04-02 15:18:08 -03:00
..
adminpack
amcheck Report progress of CREATE INDEX operations 2019-04-02 15:18:08 -03:00
auth_delay
auto_explain
bloom Report progress of CREATE INDEX operations 2019-04-02 15:18:08 -03:00
btree_gin
btree_gist Change floating-point output format for improved performance. 2019-02-13 15:20:33 +00:00
citext Move hash_any prototype from access/hash.h to utils/hashutils.h 2019-03-11 13:17:50 -03:00
cube Change floating-point output format for improved performance. 2019-02-13 15:20:33 +00:00
dblink Initialize structure at declaration 2019-03-25 09:36:58 +01:00
dict_int
dict_xsyn
earthdistance
file_fdw Split create_foreignscan_path() into three functions. 2019-02-07 13:11:12 -05:00
fuzzystrmatch Update copyright for 2019 2019-01-02 12:44:25 -05:00
hstore Move hash_any prototype from access/hash.h to utils/hashutils.h 2019-03-11 13:17:50 -03:00
hstore_plperl
hstore_plpython Fix volatile vs. pointer confusion 2019-03-14 08:42:48 +01:00
intagg
intarray Make use of compiler builtins and/or assembly for CLZ, CTZ, POPCNT. 2019-02-15 23:22:33 -05:00
isn
jsonb_plperl
jsonb_plpython Fix volatile vs. pointer confusion 2019-03-14 08:42:48 +01:00
lo
ltree Make use of compiler builtins and/or assembly for CLZ, CTZ, POPCNT. 2019-02-15 23:22:33 -05:00
ltree_plpython
oid2name
pageinspect Only allow heap in a number of contrib modules. 2019-04-01 14:57:21 -07:00
passwordcheck
pg_buffercache
pg_freespacemap
pg_prewarm Don't auto-restart per-database autoprewarm workers. 2019-03-18 15:22:42 -04:00
pg_standby
pg_stat_statements Move hash_any prototype from access/hash.h to utils/hashutils.h 2019-03-11 13:17:50 -03:00
pg_trgm Make use of compiler builtins and/or assembly for CLZ, CTZ, POPCNT. 2019-02-15 23:22:33 -05:00
pg_visibility
pgcrypto Suppress another case of MSVC warning 4146. 2019-02-16 15:28:27 -08:00
pgrowlocks Only allow heap in a number of contrib modules. 2019-04-01 14:57:21 -07:00
pgstattuple Only allow heap in a number of contrib modules. 2019-04-01 14:57:21 -07:00
postgres_fdw postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely. 2019-04-02 20:30:45 +09:00
seg Change floating-point output format for improved performance. 2019-02-13 15:20:33 +00:00
sepgsql Move hash_any prototype from access/hash.h to utils/hashutils.h 2019-03-11 13:17:50 -03:00
spi
sslinfo Phase 3 of pgindent updates. 2017-06-21 15:35:54 -04:00
start-scripts
tablefunc Switch some palloc/memset calls to palloc0 2019-03-27 12:02:50 +09:00
tcn
test_decoding Relax overly strict assertion 2019-02-12 18:42:37 -03:00
tsm_system_rows tableam: sample scan. 2019-03-31 18:37:57 -07:00
tsm_system_time tableam: sample scan. 2019-03-31 18:37:57 -07:00
unaccent Add combining characters to unaccent.rules. 2019-02-01 15:23:01 +01:00
uuid-ossp
vacuumlo Avoid double-free in vacuumlo error path. 2019-03-24 15:13:20 -04:00
xml2
contrib-global.mk
Makefile
README

The PostgreSQL contrib tree
---------------------------

This subtree contains porting tools, analysis utilities, and plug-in
features that are not part of the core PostgreSQL system, mainly
because they address a limited audience or are too experimental to be
part of the main source tree.  This does not preclude their
usefulness.

User documentation for each module appears in the main SGML
documentation.

When building from the source distribution, these modules are not
built automatically, unless you build the "world" target.  You can
also build and install them all by running "make all" and "make
install" in this directory; or to build and install just one selected
module, do the same in that module's subdirectory.

Some directories supply new user-defined functions, operators, or
types.  To make use of one of these modules, after you have installed
the code you need to register the new SQL objects in the database
system by executing a CREATE EXTENSION command.  In a fresh database,
you can simply do

    CREATE EXTENSION module_name;

See the PostgreSQL documentation for more information about this
procedure.