diff options
author | unknown <monty@mysql.com> | 2004-01-29 15:16:48 +0100 |
---|---|---|
committer | unknown <monty@mysql.com> | 2004-01-29 15:16:48 +0100 |
commit | b9073593d0defc65472125b625e399e5ab22d1f6 (patch) | |
tree | 1a3482e487cc9dcf2c6335c759351aacd5960227 /sql/table.cc | |
parent | 4db4ffef27624e58cc5c45cc8a165bfb9509fbfa (diff) | |
download | mariadb-git-b9073593d0defc65472125b625e399e5ab22d1f6.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.cc | 3 |
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 || |