diff options
author | Zardosht Kasheff <zardosht@tokutek.com> | 2013-04-17 00:02:17 -0400 |
---|---|---|
committer | Yoni Fogel <yoni@tokutek.com> | 2013-04-17 00:02:17 -0400 |
commit | 38468b6c2d1d77dd073a7e56b4c565ba3004f3ad (patch) | |
tree | f6e436758a132bef3af63083151d6a2c1be33ea1 /storage/tokudb/ha_tokudb_mrr_maria.cc | |
parent | 691e2b7123f643fcc5a84c2fa09ae6bd7fc954d2 (diff) | |
download | mariadb-git-38468b6c2d1d77dd073a7e56b4c565ba3004f3ad.tar.gz |
refs #5571, merge to main
git-svn-id: file:///svn/mysql/tokudb-engine/tokudb-engine@53300 c7de825b-a66e-492c-adef-691d508d4ae1
Diffstat (limited to 'storage/tokudb/ha_tokudb_mrr_maria.cc')
-rw-r--r-- | storage/tokudb/ha_tokudb_mrr_maria.cc | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/storage/tokudb/ha_tokudb_mrr_maria.cc b/storage/tokudb/ha_tokudb_mrr_maria.cc new file mode 100644 index 00000000000..53fdb494376 --- /dev/null +++ b/storage/tokudb/ha_tokudb_mrr_maria.cc @@ -0,0 +1,47 @@ +/**************************************************************************** + * DS-MRR implementation, essentially copied from InnoDB/MyISAM/Maria + ***************************************************************************/ + +/** + * Multi Range Read interface, DS-MRR calls + */ + +int ha_tokudb::multi_range_read_init(RANGE_SEQ_IF *seq, void *seq_init_param, + uint n_ranges, uint mode, + HANDLER_BUFFER *buf) +{ + return ds_mrr.dsmrr_init(this, seq, seq_init_param, n_ranges, mode, buf); +} + +int ha_tokudb::multi_range_read_next(range_id_t *range_info) +{ + return ds_mrr.dsmrr_next(range_info); +} + +ha_rows ha_tokudb::multi_range_read_info_const(uint keyno, RANGE_SEQ_IF *seq, + void *seq_init_param, + uint n_ranges, uint *bufsz, + uint *flags, + COST_VECT *cost) +{ + /* See comments in ha_myisam::multi_range_read_info_const */ + ds_mrr.init(this, table); + ha_rows res= ds_mrr.dsmrr_info_const(keyno, seq, seq_init_param, n_ranges, + bufsz, flags, cost); + return res; +} + +ha_rows ha_tokudb::multi_range_read_info(uint keyno, uint n_ranges, uint keys, + uint key_parts, uint *bufsz, + uint *flags, COST_VECT *cost) +{ + ds_mrr.init(this, table); + ha_rows res= ds_mrr.dsmrr_info(keyno, n_ranges, keys, key_parts, bufsz, + flags, cost); + return res; +} + +int ha_tokudb::multi_range_read_explain_info(uint mrr_mode, char *str, size_t size) +{ + return ds_mrr.dsmrr_explain_info(mrr_mode, str, size); +} |