Skip to content

Commit d4f5cf5

Browse files
committed
Avoid core dump in _outPathInfo() for Path without a parent RelOptInfo.
Nearly all Paths have parents, but a ResultPath representing an empty FROM clause does not. Avoid a core dump in such cases. I believe this is only a hazard for debugging usage, not for production, else we'd have heard about it before. Nonetheless, back-patch to 9.1 where the troublesome code was introduced. Noted while poking at bug #11703.
1 parent 9a540c1 commit d4f5cf5

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

src/backend/nodes/outfuncs.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1473,7 +1473,10 @@ _outPathInfo(StringInfo str, const Path *node)
14731473
{
14741474
WRITE_ENUM_FIELD(pathtype, NodeTag);
14751475
appendStringInfo(str, " :parent_relids ");
1476-
_outBitmapset(str, node->parent->relids);
1476+
if (node->parent)
1477+
_outBitmapset(str, node->parent->relids);
1478+
else
1479+
_outBitmapset(str, NULL);
14771480
appendStringInfo(str, " :required_outer ");
14781481
if (node->param_info)
14791482
_outBitmapset(str, node->param_info->ppi_req_outer);

0 commit comments

Comments
 (0)