Add a batch to the build side. Does not copy the data, so either resources must be owned by the batch (or a later batch), or DeepCopyBuildBatches() must be called before the referenced resources are released. Exposed so that NestedLoopJoinNode can bypass the DataSink interface for efficiency.
| 107 | /// before the referenced resources are released. |
| 108 | /// Exposed so that NestedLoopJoinNode can bypass the DataSink interface for efficiency. |
| 109 | inline void AddBuildBatch(RowBatch* batch) { |
| 110 | input_build_batches_.AddRowBatch(batch); |
| 111 | if (filter_ctxs_.size() > 0) { |
| 112 | FOREACH_ROW(batch, 0, build_batch_iter) { |
| 113 | TupleRow* build_row = build_batch_iter.Get(); |
| 114 | InsertRuntimeFilters(filter_ctxs_.data(), build_row); |
| 115 | } |
| 116 | } |
| 117 | } |
| 118 | |
| 119 | /// Return a pointer to the final list of build batches. |
| 120 | /// Only valid to call after FlushFinal() has been called. The returned build batches |
no test coverage detected