summaryrefslogtreecommitdiff
path: root/sql/handler.cc
diff options
context:
space:
mode:
authorMichael Widenius <monty@askmonty.org>2013-06-27 14:01:03 +0300
committerMichael Widenius <monty@askmonty.org>2013-06-27 14:01:03 +0300
commit94d722b6a43b86ee760f07915921cf58f9869a5d (patch)
tree9e750187a900b393c5cb3139c306f16c2cf07fca /sql/handler.cc
parente7606294b2bbd70be118cc81c5818dc643a770bf (diff)
downloadmariadb-git-94d722b6a43b86ee760f07915921cf58f9869a5d.tar.gz
ha_partition.cc and ha_partition.h are now completely merged
Added sql_mode_t to simplify merges
Diffstat (limited to 'sql/handler.cc')
-rw-r--r--sql/handler.cc26
1 files changed, 17 insertions, 9 deletions
diff --git a/sql/handler.cc b/sql/handler.cc
index 86647d02f70..0d9684c0152 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -2237,6 +2237,7 @@ int ha_delete_table(THD *thd, handlerton *table_type, const char *path,
handler *handler::clone(const char *name, MEM_ROOT *mem_root)
{
handler *new_handler= get_new_handler(table->s, mem_root, ht);
+
if (!new_handler)
return NULL;
if (new_handler->set_ha_share_ref(ha_share))
@@ -5047,14 +5048,7 @@ int handler::read_range_first(const key_range *start_key,
DBUG_ENTER("handler::read_range_first");
eq_range= eq_range_arg;
- end_range= 0;
- if (end_key)
- {
- end_range= &save_end_range;
- save_end_range= *end_key;
- key_compare_result_on_equal= ((end_key->flag == HA_READ_BEFORE_KEY) ? 1 :
- (end_key->flag == HA_READ_AFTER_KEY) ? -1 : 0);
- }
+ set_end_range(end_key);
range_key_part= table->key_info[active_index].key_part;
if (!start_key) // Read first record
@@ -5130,12 +5124,26 @@ int handler::read_range_next()
}
+void handler::set_end_range(const key_range *end_key)
+{
+ end_range= 0;
+ if (end_key)
+ {
+ end_range= &save_end_range;
+ save_end_range= *end_key;
+ key_compare_result_on_equal=
+ ((end_key->flag == HA_READ_BEFORE_KEY) ? 1 :
+ (end_key->flag == HA_READ_AFTER_KEY) ? -1 : 0);
+ }
+}
+
+
/**
Compare if found key (in row) is over max-value.
@param range range to compare to row. May be 0 for no range
- @seealso
+ @see also
key.cc::key_cmp()
@return