Re: Explain buffers wrong counter with parallel plans
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Andres Freund <andres@anarazel.de>
Cc: Robert Haas <robertmhaas@gmail.com>, "Jonathan S. Katz" <jonathan.katz@excoventures.com>,
Alvaro Herrera <alvherre@2ndquadrant.com>, Adrien Nayrat <adrien.nayrat@anayrat.info>, PostgreSQL mailing lists <pgsql-hackers@postgresql.org>
Date: 2018-08-02T04:56:44Z
Lists: pgsql-hackers
On Thu, Aug 2, 2018 at 8:38 AM, Andres Freund <andres@anarazel.de> wrote: > Hi, > > On 2018-08-02 08:21:58 +0530, Amit Kapila wrote: >> I think something on the lines what Tom and you are suggesting can be >> done with the help of EXEC_FLAG_BACKWARD, but I don't see the need to >> do anything for this patch. The change in nodeLimit.c is any way for >> forward scans, so there shouldn't be any need for any other check. > > I think this is almost a guarantee to introduce bugs in the future. And > besides that, as Robert points out, it's essentially an exiting bug for > custom scans. Given that EXEC_FLAG_BACKWARD already exists, why not do > the right thing here? > Sure, if we want we can do it in this patch, but this is not the problem of this patch. It is also related to existing usage of shutdown callbacks. I think we can use es_top_eflags in Estate to detect it and then call shutdown only if EXEC_FLAG_BACKWARD is not set. I think we should do that as a separate patch either before or after this patch rather than conflating that change into this patch. IIUC, then Robert also said that we should fix that separately. I will do as per whatever consensus we reach here. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Adjust comment atop ExecShutdownNode.
- 32b16d497a93 10.6 landed
- f34d4b79fab4 11.0 landed
- 4f9a97e417ca 12.0 landed
-
Prohibit shutting down resources if there is a possibility of back up.
- 69de17186ad9 9.6.11 landed
- ba10eaef509b 10.6 landed
- c054afd0a22c 11.0 landed
- 2cd0acfdade8 12.0 landed
-
Fix buffer usage stats for parallel nodes.
- 19df1702f5c5 9.6.10 landed
- b805b63ac277 10.5 landed
- dac7fe13bbf1 11.0 landed
- 85c9d3475e4f 12.0 landed
-
Match the buffer usage tracking for leader and worker backends.
- 7124c93fb54f 9.6.10 landed
- ef305bd59d98 11.0 landed
- ccc84a956b00 12.0 landed
-
Improve division of labor between execParallel.c and nodeGather[Merge].c.
- 01edb5c7fc3b 10.0 cited