diff options
author | unknown <acurtis/antony@ltamd64.xiphis.org> | 2006-12-26 12:33:21 -0800 |
---|---|---|
committer | unknown <acurtis/antony@ltamd64.xiphis.org> | 2006-12-26 12:33:21 -0800 |
commit | fcbfb41f30d794a14241070a44bba841ea0417d7 (patch) | |
tree | c404e0b5b76f15a67987df869260f7a0aba1dcaf /sql/opt_range.cc | |
parent | 4dabfa5de70c59c4f7ea1e4a33224c5a3f798d66 (diff) | |
parent | 901cbf0326caa9fd144d4fb872a542d0fa44b8f6 (diff) | |
download | mariadb-git-fcbfb41f30d794a14241070a44bba841ea0417d7.tar.gz |
Merge xiphis.org:/home/antony/work2/mysql-5.1-engines
into xiphis.org:/home/antony/work2/mysql-5.1-engines-merge
include/mysql.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
storage/myisam/mi_range.c:
Auto merged
storage/myisam/mi_test1.c:
Auto merged
storage/myisam/mi_write.c:
Auto merged
storage/myisam/rt_split.c:
Auto merged
configure.in:
fix merge conflict
Diffstat (limited to 'sql/opt_range.cc')
-rw-r--r-- | sql/opt_range.cc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sql/opt_range.cc b/sql/opt_range.cc index bd930ba91f4..929133841bc 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -1001,6 +1001,11 @@ QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT() if (file) { range_end(); + if (head->key_read) + { + head->key_read= 0; + file->extra(HA_EXTRA_NO_KEYREAD); + } if (free_file) { DBUG_PRINT("info", ("Freeing separate handler 0x%lx (free: %d)", (long) file, @@ -1009,10 +1014,6 @@ QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT() file->close(); delete file; } - else - { - file->extra(HA_EXTRA_NO_KEYREAD); - } } delete_dynamic(&ranges); /* ranges are allocated in alloc */ free_root(&alloc,MYF(0)); @@ -1194,7 +1195,11 @@ end: org_file= head->file; head->file= file; /* We don't have to set 'head->keyread' here as the 'file' is unique */ - head->mark_columns_used_by_index(index); + if (!head->no_keyread) + { + head->key_read= 1; + head->mark_columns_used_by_index(index); + } head->prepare_for_position(); head->file= org_file; bitmap_copy(&column_bitmap, head->read_set); |