Re: pgsql: Fix contrib/auto_explain to not cause problems in parallel worke

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: Re: pgsql: Fix contrib/auto_explain to not cause problems in parallel worke
Date: 2019-06-04 01:13:54
Message-ID: 20190604011354.GD1529@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Hi Tom,

On Mon, Jun 03, 2019 at 10:06:21PM +0000, Tom Lane wrote:
> Fix contrib/auto_explain to not cause problems in parallel workers.
>
> A parallel worker process should not be making any decisions of its
> own about whether to auto-explain. If the parent session process
> passed down flags asking for instrumentation data, do that, otherwise
> not. Trying to enable instrumentation anyway leads to bugs like the
> "could not find key N in shm TOC" failure reported in bug #15821
> from Christian Hofstaedtler.

This has broken the builds on Windows for 9.6 and 10:
https://buildfarm.postgresql.org/cgi-bin/show_stage_log.pl?nm=woodlouse&dt=2019-06-04%2000%3A42%3A07&stg=make

Here is the failure:
auto_explain.obj : error LNK2001: unresolved external symbol
ParallelWorkerNumber [C:\buildfarm\buildenv\REL_10_STABLE\pgsql.build\auto_explain.vcxproj]

This gets included as a dependency because of the call to
IsParallelWorker() you have added in this commit, and I think that
this can be fixed by adding PGDLLIMPORT to the variable in
parallel.h. Would you fix it or should I?
--
Michael

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2019-06-04 01:16:56 Re: pgsql: Fix contrib/auto_explain to not cause problems in parallel worke
Previous Message Michael Paquier 2019-06-04 00:49:38 pgsql: Fix some typos and inconsistencies in tableam.h