Merge pull request #9586 from influxdata/bj-interrupt-show-series
Allow SHOW SERIES killpull/9591/head
commit
5bd29a03de
|
@ -752,7 +752,7 @@ func (itr *seriesPointIterator) readSeriesKeys(name []byte) error {
|
|||
|
||||
// Slurp all series keys.
|
||||
itr.keys = itr.keys[:0]
|
||||
for {
|
||||
for i := 0; ; i++ {
|
||||
elem, err := sitr.Next()
|
||||
if err != nil {
|
||||
return err
|
||||
|
@ -760,6 +760,14 @@ func (itr *seriesPointIterator) readSeriesKeys(name []byte) error {
|
|||
break
|
||||
}
|
||||
|
||||
// Periodically check for interrupt.
|
||||
if i&0xFF == 0xFF {
|
||||
select {
|
||||
case <-itr.opt.InterruptCh:
|
||||
return itr.Close()
|
||||
}
|
||||
}
|
||||
|
||||
key := itr.indexSet.SeriesFile.SeriesKey(elem.SeriesID)
|
||||
if len(key) == 0 {
|
||||
continue
|
||||
|
|
|
@ -811,7 +811,13 @@ func (s *Shard) CreateIterator(ctx context.Context, m *influxql.Measurement, opt
|
|||
return nil, err
|
||||
}
|
||||
indexSet := IndexSet{Indexes: []Index{index}, SeriesFile: s.sfile}
|
||||
return NewSeriesPointIterator(indexSet, opt)
|
||||
|
||||
itr, err := NewSeriesPointIterator(indexSet, opt)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return query.NewInterruptIterator(itr, opt.InterruptCh), nil
|
||||
case "_tagKeys":
|
||||
return NewTagKeysIterator(s, opt)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue