Re: Explain buffers wrong counter with parallel plans

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, "Jonathan S. Katz" <jonathan.katz@excoventures.com>, Alvaro Herrera <alvherre@2ndquadrant.com>, Adrien Nayrat <adrien.nayrat@anayrat.info>, Andres Freund <andres@anarazel.de>, PostgreSQL mailing lists <pgsql-hackers@postgresql.org>
Date: 2018-08-01T15:20:20Z
Lists: pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> Looking at it, this sounds suspiciously something where we could just
> test EXEC_FLAG_BACKWARD, based on the comments for that flag, but I
> wouldn't be willing to bet very much on me being right about that.
> Can somebody try to fetch backward even if this flag wasn't provided?

They're not supposed to, and it would be a bug of theirs not yours
if they did.  Other node types that rely on eflags being provided
honestly generally just Assert that they're not asked for something
else later.

			regards, tom lane


Commits

  1. Adjust comment atop ExecShutdownNode.

  2. Prohibit shutting down resources if there is a possibility of back up.

  3. Fix buffer usage stats for parallel nodes.

  4. Match the buffer usage tracking for leader and worker backends.

  5. Improve division of labor between execParallel.c and nodeGather[Merge].c.