component/performancedifficulty/mediumhelp wantedsig/transactionstatus/mentortype/enhancement
描述
Feature Request
Scanning multiple ranges (in Coprocessor) is not efficient currently because for each range we need to rebuild the rocksdb iterator. This results in a strange case that scanning from a to z can be faster than scanning from a to c, from f to g, from x to z.
We can support scanning multiple (ordered) ranges in the mvcc scanner, by using the same rocksdb iterator. Each time for a new range, we can next() for several times and then seek() for it, just like what we did in current mvcc process.