summaryrefslogtreecommitdiff
path: root/sql/sql_update.cc
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2003-10-11 13:06:55 +0200
committerunknown <serg@serg.mylan>2003-10-11 13:06:55 +0200
commit2e1115edc1b5899975c33b4367256ce650d3a0f4 (patch)
treeff3da12e7e88d561877cd7b6f3fe64edad0c10c0 /sql/sql_update.cc
parent7154615de30122f4dcf719b11fcbc32563ff11d2 (diff)
downloadmariadb-git-2e1115edc1b5899975c33b4367256ce650d3a0f4.tar.gz
key_map with more that 64 bits width
sql/field.cc: typedef Bitmap<64> key_map all tests pass sql/ha_berkeley.cc: typedef Bitmap<64> key_map all tests pass sql/ha_berkeley.h: typedef Bitmap<64> key_map all tests pass sql/item.cc: typedef Bitmap<64> key_map all tests pass sql/item_func.cc: typedef Bitmap<64> key_map all tests pass sql/opt_sum.cc: typedef Bitmap<64> key_map all tests pass sql/sql_delete.cc: typedef Bitmap<64> key_map all tests pass sql/sql_show.cc: typedef Bitmap<64> key_map all tests pass sql/sql_test.cc: typedef Bitmap<64> key_map all tests pass sql/sql_update.cc: typedef Bitmap<64> key_map all tests pass include/my_bitmap.h: more bitmap methods mysys/my_bitmap.c: more bitmap methods sql/field.h: init bitmaps sql/ha_innodb.h: optimization sql/ha_isam.cc: optimization sql/ha_myisam.cc: optimization sql/ha_myisammrg.cc: optimization sql/handler.h: optimization sql/mysqld.cc: bitmap_init() interface changed sql/opt_range.cc: optimization sql/opt_range.h: optimization sql/slave.cc: bitmap_init() interface changed sql/sql_base.cc: optimization sql/sql_select.cc: init bitmaps using const for bitmaps whenever possible sql/sql_select.h: cleanup sql/table.cc: always init bitmaps BitKeeper/etc/ignore: Added sql/udf_example.so to the ignore list sql/mysql_priv.h: use Bitmap over ulonglong by default
Diffstat (limited to 'sql/sql_update.cc')
-rw-r--r--sql/sql_update.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/sql/sql_update.cc b/sql/sql_update.cc
index b322957b20b..3942e783a64 100644
--- a/sql/sql_update.cc
+++ b/sql/sql_update.cc
@@ -85,7 +85,7 @@ int mysql_update(THD *thd,
/* Calculate "table->used_keys" based on the WHERE */
table->used_keys=table->keys_in_use;
- table->quick_keys=0;
+ table->quick_keys.clear_all();
want_privilege=table->grant.want_privilege;
table->grant.want_privilege=(SELECT_ACL & ~table->grant.privilege);
@@ -143,7 +143,7 @@ int mysql_update(THD *thd,
}
// Don't count on usage of 'only index' when calculating which key to use
- table->used_keys=0;
+ table->used_keys.clear_all();
select=make_select(table,0,0,conds,&error);
if (error ||
(select && select->check_quick(safe_update, limit)) || !limit)
@@ -158,7 +158,7 @@ int mysql_update(THD *thd,
DBUG_RETURN(0);
}
/* If running in safe sql mode, don't allow updates without keys */
- if (!table->quick_keys)
+ if (table->quick_keys.is_clear_all())
{
thd->lex.select_lex.options|=QUERY_NO_INDEX_USED;
if (safe_update && !using_limit)
@@ -186,7 +186,7 @@ int mysql_update(THD *thd,
matching rows before updating the table!
*/
table->file->extra(HA_EXTRA_DONT_USE_CURSOR_TO_UPDATE);
- if (old_used_keys & ((key_map) 1 << used_index))
+ if (old_used_keys.is_set(used_index))
{
table->key_read=1;
table->file->extra(HA_EXTRA_KEYREAD);
@@ -524,7 +524,7 @@ int multi_update::prepare(List<Item> &not_used_values, SELECT_LEX_UNIT *unit)
update.link_in_list((byte*) tl, (byte**) &tl->next);
tl->shared= table_count++;
table->no_keyread=1;
- table->used_keys=0;
+ table->used_keys.clear_all();
table->pos_in_table_list= tl;
}
}