code: func (e *IndexLookUpExecutor) Next(ctx context.Context, req *chunk.RecordBatch) error {
  	if e.runtimeStats != nil {
  		start := time.Now()
  		defer func() { e.runtimeStats.Record(time.Since(start), req.NumRows()) }()
  	}
  	if !e.workerStarted {
  		if err := e.startWorkers(ctx, req.RequiredRows()); err != nil {
  			return err
  		}
  	}
  	req.Reset()
  	for {
  		resultTask, err := e.getResultTask()
  		if err != nil {
  			return err
  		}
  		if resultTask == nil {
  			return nil
  		}
  		for resultTask.cursor < len(resultTask.rows) {
  			req.AppendRow(resultTask.rows[resultTask.cursor])
  			resultTask.cursor++
  			if req.IsFull() {
  				return nil
  			}
  		}
  	}
  }
docs: // Next implements Exec Next interface.