code: func (p PhysicalIndexReader) Init(ctx sessionctx.Context) *PhysicalIndexReader {
  	p.basePhysicalPlan = newBasePhysicalPlan(ctx, TypeIndexReader, &p)
  	p.IndexPlans = flattenPushDownPlan(p.indexPlan)
  	switch p.indexPlan.(type) {
  	case *PhysicalHashAgg, *PhysicalStreamAgg:
  		p.schema = p.indexPlan.Schema()
  	default:
  		is := p.IndexPlans[0].(*PhysicalIndexScan)
  		p.schema = is.dataSourceSchema
  	}
  	p.OutputColumns = p.schema.Clone().Columns
  	return &p
  }
docs: // Init initializes PhysicalIndexReader.