code: func (c *Chunk) UpperBound(colIdx int, d *types.Datum) int {
  	return sort.Search(c.NumRows(), func(i int) bool {
  		return Compare(c.GetRow(i), colIdx, d) > 0
  	})
  }
docs: // UpperBound searches on the non-decreasing column colIdx,
  // returns the smallest index i such that the value at row i is larger than `d`.