On Thu, Apr 8, 2021 at 3:11 PM Julien Rouhaud <rjuju...@gmail.com> wrote: > > On Thu, Apr 08, 2021 at 02:52:26PM +0530, Amit Kapila wrote: > > > > Yeah, we do pass instrumentation flags from leader to worker but not > > the one allocated via pg_stat_staments (pgss_ExecutorStart {... > > queryDesc->totaltime ...}. > > Ah indeed, I now remember that problem that I had to deal with in some > extensions [1]. For the record this was initially raised by Tomas in [2], but > unfortunately that thread got forgotten and probably all third-party > extensions > ended up allocating some shmem for their need. > > > However, I guess prior to this patch those > > were anyway not allocated separately because queryid was not passed to > > workers. So, I think you are right it shouldn't change the previous > > behavior. > > I think that previously parallel workers always added the required > instrumentation if pg_stat_statements is loaded, >
How? AFAICS, in pgss_ExecutorStart(), we allocate the instrumentation structure only if queryid is non-zero which prior to this patch shouldn't happen. -- With Regards, Amit Kapila.