File tree 1 file changed +5
-0
lines changed
datafusion/physical-plan/src/aggregates/group_values
1 file changed +5
-0
lines changed Original file line number Diff line number Diff line change @@ -101,13 +101,18 @@ impl<T: AggregationHashTableEntry> AggregationHashTable<T> {
101
101
let table_entry = match & table_entry {
102
102
AggregationHashTableEntryState :: Empty => {
103
103
self . pending_append_indices . push ( row_idx) ;
104
+ // We place the `future group index` into `raw_table`.
105
+ // And if rows with same hash values(repeated row in most situations)
106
+ // exist in input `cols`, it is able to get this `future group index` here
107
+ // and use compare the related `group value` after it is really inserted.
104
108
* table_entry = AggregationHashTableEntryState :: PlaceHolder (
105
109
current_total_groups,
106
110
) ;
107
111
current_total_groups += 1 ;
108
112
continue ;
109
113
}
110
114
AggregationHashTableEntryState :: PlaceHolder ( group_index) => {
115
+ // The situation that rows with same ash values exist in `cols` mentioned above
111
116
let equal_to_ctx = EqualToContext {
112
117
row_index : row_idx,
113
118
group_index : * group_index,
You can’t perform that action at this time.
0 commit comments