16 #ifndef IMPALA_EXEC_CROSS_JOIN_NODE_H
17 #define IMPALA_EXEC_CROSS_JOIN_NODE_H
19 #include <boost/scoped_ptr.hpp>
20 #include <boost/unordered_set.hpp>
21 #include <boost/thread.hpp>
31 #include "gen-cpp/PlanNodes_types.h"
virtual Status GetNext(RuntimeState *state, RowBatch *row_batch, bool *eos)
boost::scoped_ptr< ObjectPool > build_batch_pool_
Object pool for build RowBatches, stores all BuildBatches in build_rows_.
A simple iterator used to scan over all the rows stored in the list.
CrossJoinNode(ObjectPool *pool, const TPlanNode &tnode, const DescriptorTbl &descs)
virtual Status Prepare(RuntimeState *state)
virtual Status Reset(RuntimeState *state)
std::string BuildListDebugString()
RowBatchList build_batches_
List of build batches, constructed in Prepare()
int ProcessLeftChildBatch(RowBatch *output_batch, RowBatch *batch, int max_added_rows)
virtual Status InitGetNext(TupleRow *first_left_row)
RowBatchList::TupleRowIterator current_build_row_
virtual void Close(RuntimeState *state)
virtual Status ConstructBuildSide(RuntimeState *state)