postgresql/src/backend/utils
Amit Kapila c8f78b6161 Add a new GUC and a reloption to enable inserts in parallel-mode.
Commit 05c8482f7f added the implementation of parallel SELECT for
"INSERT INTO ... SELECT ..." which may incur non-negligible overhead in
the additional parallel-safety checks that it performs, even when, in the
end, those checks determine that parallelism can't be used. This is
normally only ever a problem in the case of when the target table has a
large number of partitions.

A new GUC option "enable_parallel_insert" is added, to allow insert in
parallel-mode. The default is on.

In addition to the GUC option, the user may want a mechanism to allow
inserts in parallel-mode with finer granularity at table level. The new
table option "parallel_insert_enabled" allows this. The default is true.

Author: "Hou, Zhijie"
Reviewed-by: Greg Nancarrow, Amit Langote, Takayuki Tsunakawa, Amit Kapila
Discussion: https://postgr.es/m/CAA4eK1K-cW7svLC2D7DHoGHxdAdg3P37BLgebqBOC2ZLc9a6QQ%40mail.gmail.com
Discussion: https://postgr.es/m/CAJcOf-cXnB5cnMKqWEp2E2z7Mvcd04iLVmV=qpFJrR3AcrTS3g@mail.gmail.com
2021-03-18 07:25:27 +05:30
..
adt Avoid creating duplicate cached plans for inherited FK constraints. 2021-03-10 14:22:31 -05:00
cache Enable parallel SELECT for "INSERT INTO ... SELECT ...". 2021-03-10 07:38:58 +05:30
error Remove server and libpq support for old FE/BE protocol version 2. 2021-03-04 10:45:55 +02:00
fmgr Fix broken ruleutils support for function TRANSFORM clauses. 2021-01-25 13:03:43 -05:00
hash Update copyright for 2021 2021-01-02 13:06:25 -05:00
init Don't consider newly inserted tuples in nbtree VACUUM. 2021-03-10 16:27:01 -08:00
mb Add direct conversion routines between EUC_TW and Big5. 2021-01-28 14:53:03 +02:00
misc Add a new GUC and a reloption to enable inserts in parallel-mode. 2021-03-18 07:25:27 +05:30
mmgr Improve performance of repeated CALLs within plpgsql procedures. 2021-01-25 22:28:29 -05:00
resowner Improve performance of repeated CALLs within plpgsql procedures. 2021-01-25 22:28:29 -05:00
sort Use sort_template.h for qsort_tuple() and qsort_ssup(). 2021-03-03 17:02:32 +13:00
time Revive "snapshot too old" with wal_level=minimal and SET TABLESPACE. 2021-01-30 00:12:18 -08:00
.gitignore Rearrange makefile rules for running Gen_fmgrtab.pl. 2018-05-03 17:54:18 -04:00
errcodes.txt Rethink SQLSTATE code for ERRCODE_IDLE_SESSION_TIMEOUT. 2021-01-11 14:53:42 -05:00
Gen_dummy_probes.pl Update copyright for 2021 2021-01-02 13:06:25 -05:00
Gen_dummy_probes.sed Update copyright for 2021 2021-01-02 13:06:25 -05:00
Gen_fmgrtab.pl Update copyright for 2021 2021-01-02 13:06:25 -05:00
generate-errcodes.pl Update copyright for 2021 2021-01-02 13:06:25 -05:00
Makefile Update copyright for 2021 2021-01-02 13:06:25 -05:00
probes.d Update copyright for 2021 2021-01-02 13:06:25 -05:00