summaryrefslogtreecommitdiff
path: root/sql/table.cc
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-01-29 15:16:48 +0100
committerunknown <monty@mysql.com>2004-01-29 15:16:48 +0100
commitffed2b74789ca1ca4f56a13a6ae8d80e4bd6a6a1 (patch)
tree1a3482e487cc9dcf2c6335c759351aacd5960227 /sql/table.cc
parentebaa077467810524d7d762392232ce0064945a84 (diff)
downloadmariadb-git-ffed2b74789ca1ca4f56a13a6ae8d80e4bd6a6a1.tar.gz
Mark that strings may change on index only reads (for BDB tables).
This fixed problem with index reads on character fields with BDB tables. (Bug #2509) BitKeeper/etc/ignore: added man/*.1 mysql-test/r/bdb.result: New test mysql-test/r/myisam.result: More tests mysql-test/t/bdb.test: Test for idnex only read mysql-test/t/myisam.test: More test to verify pushed bug fix sql/ha_berkeley.h: Mark that strings may change on index only reads sql/item_strfunc.cc: Cleanup sql/table.cc: Allow index only reads on binary strings
Diffstat (limited to 'sql/table.cc')
-rw-r--r--sql/table.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/table.cc b/sql/table.cc
index c8def7441fd..a90220fa55b 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -498,7 +498,8 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
field->type() != FIELD_TYPE_BLOB)
{
if (field->key_type() != HA_KEYTYPE_TEXT ||
- (!(ha_option & HA_KEY_READ_WRONG_STR) &&
+ ((!(ha_option & HA_KEY_READ_WRONG_STR) ||
+ field->flags & BINARY_FLAG) &&
!(keyinfo->flags & HA_FULLTEXT)))
field->part_of_key|= ((key_map) 1 << key);
if ((field->key_type() != HA_KEYTYPE_TEXT ||