diff options
Diffstat (limited to 'src/backend/executor/nodeWindowAgg.c')
-rw-r--r-- | src/backend/executor/nodeWindowAgg.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/backend/executor/nodeWindowAgg.c b/src/backend/executor/nodeWindowAgg.c index 3ac581a7113..4f0618f27ab 100644 --- a/src/backend/executor/nodeWindowAgg.c +++ b/src/backend/executor/nodeWindowAgg.c @@ -368,7 +368,8 @@ advance_windowaggregate(WindowAggState *winstate, * free the prior transValue. But if transfn returned a pointer to its * first input, we don't need to do anything. Also, if transfn returned a * pointer to a R/W expanded object that is already a child of the - * aggcontext, assume we can adopt that value without copying it. + * aggcontext, assume we can adopt that value without copying it. (See + * comments for ExecAggCopyTransValue, which this code duplicates.) */ if (!peraggstate->transtypeByVal && DatumGetPointer(newVal) != DatumGetPointer(peraggstate->transValue)) @@ -533,7 +534,8 @@ advance_windowaggregate_base(WindowAggState *winstate, * free the prior transValue. But if invtransfn returned a pointer to its * first input, we don't need to do anything. Also, if invtransfn * returned a pointer to a R/W expanded object that is already a child of - * the aggcontext, assume we can adopt that value without copying it. + * the aggcontext, assume we can adopt that value without copying it. (See + * comments for ExecAggCopyTransValue, which this code duplicates.) * * Note: the checks for null values here will never fire, but it seems * best to have this stanza look just like advance_windowaggregate. |