From 743eb8c9e6a98a615df041cf5a934b934192bd2c Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 29 Apr 2002 00:33:52 +0300 Subject: invalidation moved before tables unlocking sql/sql_delete.cc: invalidation moved before tables unlocking invalidation on multidelete error (if something changed) sql/sql_parse.cc: invalidation moved to mysql_admin_table layout fixing sql/sql_table.cc: invalidation moved to mysql_admin_table sql/sql_update.cc: invalidation moved before tables unlocking invalidation on multiupdate error (if something changed) --- sql/sql_insert.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'sql/sql_insert.cc') diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index 69fc7c00955..f0b9062f740 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -262,6 +262,8 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List &fields, info.copied=values_list.elements; end_delayed_insert(thd); } + if (info.copied || info.deleted) + query_cache_invalidate3(thd, table_list, 1); } else { @@ -303,6 +305,8 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List &fields, } if (using_transactions) error=ha_autocommit_or_rollback(thd,error); + if (info.copied || info.deleted) + query_cache_invalidate3(thd, table_list, 1); if (thd->lock) { mysql_unlock_tables(thd, thd->lock); @@ -310,8 +314,6 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List &fields, } } thd->proc_info="end"; - if (info.copied || info.deleted) - query_cache_invalidate3(thd, table_list, 1); table->time_stamp=save_time_stamp; // Restore auto timestamp ptr table->next_number_field=0; thd->count_cuted_fields=0; -- cgit v1.2.1 From 7cec02a26e4c60626088bc0ebaf1372d246e71d1 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 29 Apr 2002 12:24:14 +0300 Subject: Fixed that enable-reads-from-master and repl-parse-query works in option files. Fixed slowdown problem on win98 Fixed syntax for ALTER TABLE .. RENAME Docs/manual.texi: changelog libmysql/libmysql.c: Fixed that enable-reads-from-master and repl-parse-query works in option files. myisam/ft_boolean_search.c: Portability fixes mysys/my_thr_init.c: cleanup sql/sql_base.cc: Fixed slowdown problem on win98 sql/sql_delete.cc: Removed compiler warnings sql/sql_insert.cc: Removed compiler warnings sql/sql_update.cc: Removed compiler warnings sql/sql_yacc.yy: Fixed syntax for ALTER TABLE .. RENAME vio/vio.c: Added test of OS2 vio/viosocket.c: cleanup --- sql/sql_insert.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'sql/sql_insert.cc') diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index 69fc7c00955..6cc4f258c65 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -311,7 +311,9 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List &fields, } thd->proc_info="end"; if (info.copied || info.deleted) + { query_cache_invalidate3(thd, table_list, 1); + } table->time_stamp=save_time_stamp; // Restore auto timestamp ptr table->next_number_field=0; thd->count_cuted_fields=0; @@ -1330,7 +1332,9 @@ void select_insert::send_error(uint errcode,const char *err) table->file->activate_all_index(thd); ha_rollback_stmt(thd); if (info.copied || info.deleted) + { query_cache_invalidate3(thd, table, 1); + } } @@ -1343,8 +1347,9 @@ bool select_insert::send_eof() if ((error2=ha_autocommit_or_rollback(thd,error)) && ! error) error=error2; if (info.copied || info.deleted) + { query_cache_invalidate3(thd, table, 1); - + } if (error) { table->file->print_error(error,MYF(0)); -- cgit v1.2.1 From 9dc316b6be3ff685cdc39c3565d3094991f04626 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 24 May 2002 15:26:47 +0300 Subject: Fixed a bug with big result sets and UNION's BitKeeper/etc/ignore: Added mysys/getopt.c mysys/getopt1.c to the ignore list --- sql/sql_insert.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'sql/sql_insert.cc') diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index a8b80a3c435..1e00bb3f8c2 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -447,6 +447,7 @@ int write_record(TABLE *table,COPY_INFO *info) err: if (key) my_afree(key); + info->errorno= error; table->file->print_error(error,MYF(0)); return 1; } -- cgit v1.2.1