diff --git a/dbcon/mysql/ha_window_function.cpp b/dbcon/mysql/ha_window_function.cpp index c53b0094c..1ad45583c 100755 --- a/dbcon/mysql/ha_window_function.cpp +++ b/dbcon/mysql/ha_window_function.cpp @@ -680,6 +680,7 @@ ReturnedColumn* buildWindowFunctionColumn(Item* item, gp_walk_info& gwi, bool& n break; case Item_sum::UDF_SUM_FUNC: { + // UDAnF functions each have their own default set in context. mcsv1sdk::mcsv1Context& context = ac->getUDAFContext(); if (context.getRunFlag(UDAF_WINDOWFRAME_REQUIRED)) { diff --git a/utils/rowgroup/rowaggregation.cpp b/utils/rowgroup/rowaggregation.cpp index f12f0d811..b0f239329 100755 --- a/utils/rowgroup/rowaggregation.cpp +++ b/utils/rowgroup/rowaggregation.cpp @@ -792,6 +792,14 @@ void RowAggregation::initialize() { fRowGroupOut->setRowCount(1); attachGroupConcatAg(); + // For UDAF, reset the data + for (uint64_t i = 0; i < fFunctionCols.size(); i++) + { + if (fFunctionCols[i]->fAggFunction == ROWAGG_UDAF) + { + resetUDAF(i); + } + } }