mirror of
https://github.com/postgres/postgres.git
synced 2025-12-19 17:02:53 +03:00
Revert "Enable parallel SELECT for "INSERT INTO ... SELECT ..."."
To allow inserts in parallel-mode this feature has to ensure that all the constraints, triggers, etc. are parallel-safe for the partition hierarchy which is costly and we need to find a better way to do that. Additionally, we could have used existing cached information in some cases like indexes, domains, etc. to determine the parallel-safety. List of commits reverted, in reverse chronological order:ed62d3737cDoc: Update description for parallel insert reloption.c8f78b6161Add a new GUC and a reloption to enable inserts in parallel-mode.c5be48f092Improve FK trigger parallel-safety check added by05c8482f7f.e2cda3c20aFix use of relcache TriggerDesc field introduced by commit05c8482f7f.e4e87a32ccFix valgrind issue in commit05c8482f7f.05c8482f7fEnable parallel SELECT for "INSERT INTO ... SELECT ...". Discussion: https://postgr.es/m/E1lMiB9-0001c3-SY@gemulon.postgresql.org
This commit is contained in:
@@ -32,7 +32,7 @@ extern double expression_returns_set_rows(PlannerInfo *root, Node *clause);
|
||||
|
||||
extern bool contain_subplans(Node *clause);
|
||||
|
||||
extern char max_parallel_hazard(Query *parse, PlannerGlobal *glob);
|
||||
extern char max_parallel_hazard(Query *parse);
|
||||
extern bool is_parallel_safe(PlannerInfo *root, Node *node);
|
||||
extern bool contain_nonstrict_functions(Node *clause);
|
||||
extern bool contain_exec_param(Node *clause, List *param_ids);
|
||||
@@ -52,6 +52,5 @@ extern void CommuteOpExpr(OpExpr *clause);
|
||||
|
||||
extern Query *inline_set_returning_function(PlannerInfo *root,
|
||||
RangeTblEntry *rte);
|
||||
extern bool is_parallel_allowed_for_modify(Query *parse);
|
||||
|
||||
#endif /* CLAUSES_H */
|
||||
|
||||
@@ -47,7 +47,6 @@ typedef enum
|
||||
/* parameter variables and flags (see also optimizer.h) */
|
||||
extern PGDLLIMPORT Cost disable_cost;
|
||||
extern PGDLLIMPORT int max_parallel_workers_per_gather;
|
||||
extern PGDLLIMPORT bool enable_parallel_insert;
|
||||
extern PGDLLIMPORT bool enable_seqscan;
|
||||
extern PGDLLIMPORT bool enable_indexscan;
|
||||
extern PGDLLIMPORT bool enable_indexonlyscan;
|
||||
|
||||
Reference in New Issue
Block a user