From 518787c29965d10f65a7e9c073718076aceb058c Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 19 Jun 2002 00:22:30 +0300 Subject: Made keyread (key scanning) a key specific attribute. This avoids using fulltext keys for table scanning. This also reverts Sinisa's original fix for this problem. Docs/manual.texi: Update of SQL_JOIN_MAX_SIZE information3602 client/mysqldump.c: comment cleanup include/my_aes.h: General cleanup for new file include/rijndael.h: General cleanup for new file include/sha1.h: General cleanup for new file mysys/my_aes.c: General cleanup for new file mysys/rijndael.c: General cleanup for new file mysys/sha1.c: General cleanup for new file sql/ha_berkeley.h: Made keyread (key scanning) a key specific attribute. sql/ha_innodb.cc: Merge with 3.23.x sql/ha_innodb.h: Made keyread (key scanning) a key specific attribute. sql/ha_isam.cc: Moved things to table_flags() sql/ha_isam.h: Made keyread (key scanning) a key specific attribute. sql/ha_myisam.cc: Made keyread (key scanning) a key specific attribute. sql/ha_myisam.h: Made keyread (key scanning) a key specific attribute. sql/ha_myisammrg.h: Made keyread (key scanning) a key specific attribute. sql/handler.h: Made keyread (key scanning) a key specific attribute. sql/item_strfunc.cc: Cleanup of AES_xxx code sql/opt_range.cc: Made keyread (key scanning) a key specific attribute. sql/sql_base.cc: Made keyread (key scanning) a key specific attribute. sql/sql_cache.cc: Removed compiler warning sql/sql_select.cc: Removed wrong patch to fulltext problem sql/table.cc: Made keyread (key scanning) a key specific attribute. sql/table.h: Made keyread (key scanning) a key specific attribute. --- sql/ha_myisammrg.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'sql/ha_myisammrg.h') diff --git a/sql/ha_myisammrg.h b/sql/ha_myisammrg.h index ed2817f3ca6..2b9d7433d2f 100644 --- a/sql/ha_myisammrg.h +++ b/sql/ha_myisammrg.h @@ -35,10 +35,15 @@ class ha_myisammrg: public handler ulong table_flags() const { return (HA_REC_NOT_IN_SEQ | HA_READ_RND_SAME | - HA_HAVE_KEY_READ_ONLY | HA_KEYPOS_TO_RNDPOS | - HA_LASTKEY_ORDER | + HA_KEYPOS_TO_RNDPOS | HA_LASTKEY_ORDER | HA_NULL_KEY | HA_BLOB_KEY); } + ulong index_flags(uint inx) const + { + ulong flags=(HA_READ_NEXT | HA_READ_PREV | HA_READ_ORDER); + return (flags | ((table->key_info[inx].algorithm == HA_KEY_ALG_FULLTEXT) ? + 0 : HA_KEY_READ_ONLY)); + } uint max_record_length() const { return HA_MAX_REC_LENGTH; } uint max_keys() const { return MI_MAX_KEY; } uint max_key_parts() const { return MAX_REF_PARTS; } -- cgit v1.2.1