diff options
Diffstat (limited to 'src/backend/nodes/copyfuncs.c')
-rw-r--r-- | src/backend/nodes/copyfuncs.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c index 4b4ddec4c21..88dc0858707 100644 --- a/src/backend/nodes/copyfuncs.c +++ b/src/backend/nodes/copyfuncs.c @@ -314,6 +314,28 @@ _copyBitmapOr(const BitmapOr *from) return newnode; } +/* + * _copyGather + */ +static Gather * +_copyGather(const Gather *from) +{ + Gather *newnode = makeNode(Gather); + + /* + * copy node superclass fields + */ + CopyPlanFields((const Plan *) from, (Plan *) newnode); + + /* + * copy remainder of node + */ + COPY_SCALAR_FIELD(num_workers); + COPY_SCALAR_FIELD(single_copy); + + return newnode; +} + /* * CopyScanFields @@ -4235,6 +4257,9 @@ copyObject(const void *from) case T_Scan: retval = _copyScan(from); break; + case T_Gather: + retval = _copyGather(from); + break; case T_SeqScan: retval = _copySeqScan(from); break; |