code: func (e *IndexReaderExecutor) Next(ctx context.Context, req *chunk.RecordBatch) error {
  	if span := opentracing.SpanFromContext(ctx); span != nil && span.Tracer() != nil {
  		span1 := span.Tracer().StartSpan("tableReader.Next", opentracing.ChildOf(span.Context()))
  		defer span1.Finish()
  	}
  	if e.runtimeStats != nil {
  		start := time.Now()
  		defer func() { e.runtimeStats.Record(time.Since(start), req.NumRows()) }()
  	}
  	err := e.result.Next(ctx, req.Chunk)
  	if err != nil {
  		e.feedback.Invalidate()
  	}
  	return err
  }
docs: // Next implements the Executor Next interface.