mirror of
https://github.com/postgres/postgres.git
synced 2025-07-09 22:41:56 +03:00
Cope with NULL query string in ExecInitParallelPlan().
It's far from clear that this is the right approach - but a good portion of the buildfarm has been red for a few hours, on the last day of the CF. And this fixes at least the obvious crash. So let's go with that for now. Discussion: https://postgr.es/m/20210407225806.majgznh4lk34hjvu%40alap3.anarazel.de
This commit is contained in:
@ -647,7 +647,7 @@ ExecInitParallelPlan(PlanState *planstate, EState *estate,
|
||||
shm_toc_estimate_keys(&pcxt->estimator, 1);
|
||||
|
||||
/* Estimate space for query text. */
|
||||
query_len = strlen(estate->es_sourceText);
|
||||
query_len = estate->es_sourceText ? strlen(estate->es_sourceText) : 0;
|
||||
shm_toc_estimate_chunk(&pcxt->estimator, query_len + 1);
|
||||
shm_toc_estimate_keys(&pcxt->estimator, 1);
|
||||
|
||||
@ -742,6 +742,9 @@ ExecInitParallelPlan(PlanState *planstate, EState *estate,
|
||||
|
||||
/* Store query string */
|
||||
query_string = shm_toc_allocate(pcxt->toc, query_len + 1);
|
||||
if (query_len == 0)
|
||||
query_string[0] = 0;
|
||||
else
|
||||
memcpy(query_string, estate->es_sourceText, query_len + 1);
|
||||
shm_toc_insert(pcxt->toc, PARALLEL_KEY_QUERY_TEXT, query_string);
|
||||
|
||||
|
Reference in New Issue
Block a user