MCPcopy Create free account
hub / github.com/apache/impala / PushSpilledPartition

Method PushSpilledPartition

be/src/exec/grouping-aggregator.cc:1021–1033  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1019}
1020
1021Status GroupingAggregator::PushSpilledPartition(Partition* partition) {
1022 DCHECK(partition->is_spilled());
1023 DCHECK(partition->hash_tbl == nullptr);
1024 // Ensure all pages in the spilled partition's streams are unpinned by invalidating
1025 // the streams' read and write iterators. We may need all the memory to process the
1026 // next spilled partitions.
1027 RETURN_IF_ERROR(
1028 partition->aggregated_row_stream->UnpinStream(BufferedTupleStream::UNPIN_ALL));
1029 RETURN_IF_ERROR(
1030 partition->unaggregated_row_stream->UnpinStream(BufferedTupleStream::UNPIN_ALL));
1031 spilled_partitions_.push_front(partition);
1032 return Status::OK();
1033}
1034
1035void GroupingAggregator::ClosePartitions() {
1036 // Iterate through the remaining rows in the hash table and call Serialize/Finalize on

Callers

nothing calls this directly

Calls 3

OKFunction · 0.85
UnpinStreamMethod · 0.80
is_spilledMethod · 0.45

Tested by

no test coverage detected