MySQLOnRocksDB/mysql-5.6
forked from facebook/mysql-5.6

Loading…
Ranges on t.key > const are not handled efficiently #43
It is not possible to observe the issue via counters or status variables exposed by MyRocks. Only through performance measurements or in debugger.
Should we instrument Apply_changes_iter on invocations to Next() and Prev() to track the number of rows we examine internally during the query or export out the rest of the perf_context stats somehow? How useful would this be in general to track down these types of performance issues?
I think it is general useful to know how many rocksdb::Iterator::Next()/Prev() calls were made.
Instrumenting Apply_changes_iter's invocations of rocksdb::Iterator::Next()/Prev() is a good choice, because it will not count operations made by the background threads (and maybe, it is bad for the same reason - iterator scans that are not made through Apply_changes_iter are not counted)
|
|
spetrunia |
#42: Range in form tbl.key > const doesn't work in reverse column family
…
Summary: Fix issue #42. Also issue #43: Ranges on t.key > const are not handled efficiently: Make ha_rocksdb::index_read_map() do the right thing when invoked with find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column families. Detailed explanation of actions is provided in rocksdb-range-access.txt Test Plan: mtr t/rocksdb_range.test, used gcov to check the new code is covered Reviewers: maykov, hermanlee4, jonahcohen, jtolmer, yoshinorim Reviewed By: yoshinorim Differential Revision: https://reviews.facebook.net/D35103 |
d28a512
|
|
|
spetrunia |
#42: Range in form tbl.key > const doesn't work in reverse column family
…
Summary: Fix issue #42. Also issue #43: Ranges on t.key > const are not handled efficiently: Make ha_rocksdb::index_read_map() do the right thing when invoked with find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column families. Detailed explanation of actions is provided in rocksdb-range-access.txt Test Plan: mtr t/rocksdb_range.test, used gcov to check the new code is covered Reviewers: maykov, hermanlee4, jonahcohen, jtolmer, yoshinorim Reviewed By: yoshinorim Differential Revision: https://reviews.facebook.net/D35103 |
0714077
|
(This is a part of patch for issue #16)
Ranges that start with t.key > const are not handled efficiently. One can observe this as follows:
Now, set two breakpoints in ha_rocksdb::index_read_map:
run
and see
So we have enumerated 100K rows in order to return 5 rows.