summaryrefslogtreecommitdiff
path: root/sql/ha_berkeley.cc
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-09-09 07:26:28 +0300
committerunknown <monty@mysql.com>2004-09-09 07:26:28 +0300
commite18b7ea95942cb8ab0b31d453929dde50dcf3756 (patch)
treee2b882265e31ada44f3adec357920530f0c0ac31 /sql/ha_berkeley.cc
parentc92b5349701ba68fa7ab97abf14933de8d6352fe (diff)
parent33efc9677d6f6a68d3dba69f4c036856ac4af5fe (diff)
downloadmariadb-git-e18b7ea95942cb8ab0b31d453929dde50dcf3756.tar.gz
Merge on pull
BitKeeper/etc/logging_ok: auto-union include/my_sys.h: Auto merged mysql-test/r/func_in.result: Auto merged
Diffstat (limited to 'sql/ha_berkeley.cc')
-rw-r--r--sql/ha_berkeley.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/ha_berkeley.cc b/sql/ha_berkeley.cc
index 00df84e3797..b4f07073afa 100644
--- a/sql/ha_berkeley.cc
+++ b/sql/ha_berkeley.cc
@@ -357,9 +357,11 @@ ulong ha_berkeley::index_flags(uint idx, uint part, bool all_parts) const
case HA_KEYTYPE_VARTEXT:
/*
As BDB stores only one copy of equal strings, we can't use key read
- on these
+ on these. Binary collations do support key read though.
*/
- flags&= ~HA_KEYREAD_ONLY;
+ if (!(table->key_info[idx].key_part[i].field->charset()->state
+ & MY_CS_BINSORT))
+ flags&= ~HA_KEYREAD_ONLY;
break;
default: // Keep compiler happy
break;