Hi,
This is real bug? firsttupleslot == NULL.
\backend\executor\nodeGroup.c
if (TupIsNull(firsttupleslot))
{
outerslot = ExecProcNode(outerPlanState(node));
if (TupIsNull(outerslot))
{
/* empty input, so return nothing */
node->grp_done = true;
return NULL;
}
/* Copy tuple into firsttupleslot */
ExecCopySlot(firsttupleslot, outerslot);
include\executor\tuptable.h:
#define TupIsNull(slot) \
((slot) == NULL || TTS_EMPTY(slot))
static inline TupleTableSlot *
ExecCopySlot(TupleTableSlot *dstslot, TupleTableSlot *srcslot)
{
Assert(!TTS_EMPTY(srcslot));
dstslot->tts_ops->copyslot(dstslot, srcslot);
return dstslot;
}