Re: SegFault on 9.6.14
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: Jerry Sievers <gsievers19@comcast.net>,
Tomas Vondra <tomas.vondra@2ndquadrant.com>, pgsql-hackers <pgsql-hackers@postgresql.org>,
Robert Haas <robertmhaas@gmail.com>
Date: 2019-07-18T06:40:26Z
Lists: pgsql-hackers
On Wed, Jul 17, 2019 at 4:10 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > On Wed, Jul 17, 2019 at 6:28 AM Thomas Munro <thomas.munro@gmail.com> wrote: > > > > On Wed, Jul 17, 2019 at 12:44 PM Thomas Munro <thomas.munro@gmail.com> wrote: > > > > #11 0x000055666e0359df in ExecShutdownNode (node=node@entry=0x55667033a6c8) > > > > at /build/postgresql-9.6-5O8OLM/postgresql-9.6-9.6.14/build/../src/backend/executor/execProcnode.c:830 > > > > #12 0x000055666e04d0ff in ExecLimit (node=node@entry=0x55667033a428) > > > > at /build/postgresql-9.6-5O8OLM/postgresql-9.6-9.6.14/build/../src/backend/executor/nodeLimit.c:139 > > > > > > https://github.com/postgres/postgres/blob/REL9_6_STABLE/src/backend/executor/nodeLimit.c#L139 > > > > > > Limit thinks it's OK to "shut down" the subtree, but if you shut down a > > > Gather node you can't rescan it later because it destroys its shared > > > memory. Oops. Not sure what to do about that yet. > > > > Yeah, that is a problem. Actually, what we need here is to > wait-for-workers-to-finish and collect all the instrumentation > information. We don't need to destroy the shared memory at this > stage, but we don't have a special purpose function which can just > allow us to collect stats. One idea could be that we create a special > purpose function which sounds like a recipe of code duplication, > another could be that somehow pass the information through > ExecShutdownNode to Gather/GatherMerge that they don't destroy shared > memory. Immediately, I can't think of better ideas, but it is > possible that there is some better way to deal with this. > I am not able to come up with anything better. Robert, Thomas, do you see any problem with this idea or do you have any better ideas to fix this issue? -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Don't shut down Gather[Merge] early under Limit.
- 1ad0df67c790 9.6.17 landed
- f7ae68aacd9d 10.12 landed
- d0ccfa9d6a3d 11.7 landed
- 1cc3a90c7551 12.2 landed
- 080313f8296f 13.0 landed
-
Prohibit shutting down resources if there is a possibility of back up.
- 2cd0acfdade8 12.0 cited
-
Fix buffer usage stats for parallel nodes.
- 19df1702f5c5 9.6.10 cited
- 85c9d3475e4f 12.0 cited
-
Fix crashes on plans with multiple Gather (Merge) nodes.
- fd7c0fa732d9 11.0 cited
-
Separate reinitialization of shared parallel-scan state from ExecReScan.
- 41b0dd987d44 11.0 cited