BufferedRowIterator

Defines the iterator interface, with hasNext and next (return InternalRow).

WholeStageCodegenExec generate a subclass of it to construct an RDD in doExecute()->doCodeGen()

init: used to passed in the upstream iterators and their index.

currentRows: available rows that can be consumed by downstream through next

hasNext: will invoke processNext to fill the currentRows if it is empty.

shouldStop Currently the Input can continuously processing the iterator and sent to downstream to consume. But if the downstream is a limit, the upstream has to stop. Currently, it is not much of use, because if currentRows is not empty, then return true. The vectorization should leverage this property.

results matching ""

    No results matching ""