mariadb/sql
gshchepa/uchum@host.loc 2459d3a9ad Fixed bug#36676: multiupdate using LEFT JOIN updates only
first row or fails with an error:
  ERROR 1022 (23000): Can't write; duplicate key in table ''

The server uses intermediate temporary table to store updated
row data.  The first column of this table contains rowid.
Current server implementation doesn't reset NULL flag of that
column even if the server fills a column with rowid.
To keep each rowid unique, there is an unique index.
An insertion into an unique index takes into account NULL
flag of key value and ignores real data if NULL flag is set.
So, insertion of actually different rowids may lead to two
kind of problems.  Visible effect of each of these problems
depends on an initial engine type of temporary table:

1. If multiupdate initially creates temporary table as
a MyISAM table (a table contains blob columns, and the
create_tmp_table function assumes, that this table is
large), it inserts only one single row and updates
only rows with one corresponding rowid. Other rows are
silently ignored. 

2. If multiupdate initially creates MEMORY temporary
table, fills it with data and reaches size limit for
MEMORY tables (max_heap_table_size), multiupdate
converts MEMORY table into MyISAM table and fails
with an error:
  ERROR 1022 (23000): Can't write; duplicate key in table ''


Multiupdate has been fixed to update the NULL flag of
temporary table rowid columns.
2008-05-18 14:21:25 +05:00
..
examples fixed warnings from the fix of 26243 2008-03-29 17:50:46 +02:00
share Merge bk-internal.mysql.com:/home/bk/mysql-5.0-build 2008-04-03 11:28:10 -04:00
.cvsignore
add_errmsg
client_settings.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
CMakeLists.txt Bug#31745 - crash handler does not work on Windows 2008-02-19 12:37:39 +01:00
custom_conf.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
derror.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
des_key_file.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
discover.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
field.cc Partial rollback of fix for bug #30059: End-space truncation is inconsistent 2008-05-06 21:43:46 +05:00
field.h Partial rollback of fix for bug #30059: End-space truncation is inconsistent 2008-05-06 21:43:46 +05:00
field_conv.cc field_conv.cc: 2007-07-12 00:55:40 +05:00
filesort.cc Merge kaamos.(none):/data/src/mysql-5.0 2008-03-12 10:59:15 +03:00
frm_crypt.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
gen_lex_hash.cc gen_lex_hash.cc: 2007-01-31 00:06:42 +01:00
gstream.cc Merge mysql.com:/home/hf/work/30286/my41-30286 2007-10-05 16:33:08 +05:00
gstream.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
ha_archive.cc BUG#29207 - archive table reported as corrupt by check table (P1) 2007-06-27 13:19:34 +05:00
ha_archive.h Merge bk-internal.mysql.com:/home/bk/mysql-5.0 2007-01-22 14:04:40 +02:00
ha_berkeley.cc fixes for warnings and compile errors for the fix of bug 26243 2008-03-29 16:12:23 +02:00
ha_berkeley.h Fixed compiler warnings (for linux and win32 and win64) 2007-02-22 16:59:57 +02:00
ha_blackhole.cc Bug #35178 INSERT_ID not written to binary log for inserts against BLACKHOLE backed tables 2008-03-19 18:44:50 +02:00
ha_blackhole.h Bug#30294 blackhole engine causes 100% with 2 alter table statements running 2007-11-16 14:46:36 +04:00
ha_federated.cc fixed warnings and compile errors from the fix for bug 26243 2008-03-29 09:52:16 +02:00
ha_federated.h Bug #32374 crash with filesort when selecting from federated table and view. 2007-11-30 17:08:00 +04:00
ha_heap.cc type conversions fixed to get rid of warnings 2007-10-23 16:32:05 +05:00
ha_heap.h [pb problem]: ha_heap->clone() fails on windows because of mess with 2007-07-17 19:51:50 +04:00
ha_innodb.cc fixed warnings and compile errors from the fix for bug 26243 2008-03-29 09:52:16 +02:00
ha_innodb.h Bug #20358: InnoDB hang on the adaptive hash index latch in btr0sea.c 2007-10-02 23:47:30 -06:00
ha_myisam.cc Bug#33756 - query cache with concurrent_insert=0 appears broken 2008-03-13 16:39:27 +01:00
ha_myisam.h Bug#28249 Query Cache returns wrong result with concurrent insert / certain lock 2007-07-12 13:29:51 +02:00
ha_myisammrg.cc Merge amd64.(none):/src/mysql-5.0-bugteam 2008-03-28 16:01:05 -04:00
ha_myisammrg.h BUG#26976 - Missing table in merge not noted in related error msg + 2007-06-06 04:42:41 +05:00
ha_ndbcluster.cc fixed warnings and compile errors from the fix for bug 26243 2008-03-29 09:52:16 +02:00
ha_ndbcluster.h ha_ndbcluster.h: 2007-11-05 20:18:22 +01:00
ha_ndbcluster_cond.cc fixed warnings and compile errors from the fix for bug 26243 2008-03-29 09:52:16 +02:00
ha_ndbcluster_cond.h Bug#34749: Server crash when using NAME_CONST() with an aggregate function 2008-02-28 14:23:22 +01:00
handler.cc Fixed bug #36055: mysql_upgrade doesn't really 'upgrade' tables 2008-05-12 21:01:13 +05:00
handler.h Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
hash_filo.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
hash_filo.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
hostname.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
init.cc Bug#26294: library name conflict between MySQL 4.x, 5.0 and Qt 3.3 2008-04-03 11:32:00 -04:00
item.cc BUG#36139 "float, zerofill, crash with subquery" 2008-04-22 02:53:12 +04:00
item.h Merge kaamos.(none):/data/src/mysql-5.0 2008-03-12 10:59:15 +03:00
item_buff.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
item_cmpfunc.cc Bug#26243 mysql command line crash after control-c 2008-03-28 14:02:27 -04:00
item_cmpfunc.h Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0 2007-12-04 20:58:21 -07:00
item_create.cc Fix mismerge. 2008-04-10 15:55:37 -04:00
item_create.h Bug #27921 View ignores precision for CAST() 2007-05-10 00:17:21 +05:00
item_func.cc fixed warnings from the fix of 26243 2008-03-29 17:50:46 +02:00
item_func.h Bug#34749: Server crash when using NAME_CONST() with an aggregate function 2008-02-28 14:23:22 +01:00
item_geofunc.cc Merge mysql.com:/home/hf/work/31158/my41-31158 2007-11-17 16:48:57 +04:00
item_geofunc.h Bug #31155 gis types in union'd select cause crash. 2007-10-04 12:01:28 +05:00
item_row.cc Many files: 2006-12-23 20:17:15 +01:00
item_row.h Merge bk-internal.mysql.com:/home/bk/mysql-5.0 2007-01-22 14:04:40 +02:00
item_strfunc.cc Bug#30981 CHAR(0x41 USING ucs2) doesn't add leading zero 2007-10-11 16:07:10 +05:00
item_strfunc.h Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.0 2007-12-04 20:58:21 -07:00
item_subselect.cc Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-bugteam 2008-03-28 14:31:52 +03:00
item_subselect.h Bug #31884: Assertion + crash in subquery in the SELECT clause. 2007-10-30 14:27:21 +02:00
item_sum.cc Fix for bug #35298: GROUP_CONCAT with DISTINCT can crash the server 2008-05-01 13:49:26 +03:00
item_sum.h Bug#27219: Aggregate functions in ORDER BY. 2008-03-27 19:49:32 +03:00
item_timefunc.cc Bug #33256: CREATE ... SELECT creates obsolete table 2007-12-21 12:44:24 +02:00
item_timefunc.h Bug #33256: CREATE ... SELECT creates obsolete table 2007-12-21 12:44:24 +02:00
item_uniq.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
item_uniq.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
key.cc Fixed bug #32556: assert in "using index for group-by" : 2007-11-21 22:56:42 +04:00
lex.h Fix -ansi -pedantic warning (can't cast a pointer to function 2007-03-08 12:04:45 +03:00
lex_symbol.h Fix -ansi -pedantic warning (can't cast a pointer to function 2007-03-08 12:04:45 +03:00
lock.cc fixed warnings from the fix of 26243 2008-03-29 17:50:46 +02:00
log.cc Merge mysql1000.(none):/home/andrei/MySQL/FIXES/5.0/bug18199-purge_no_warn 2008-03-21 16:10:15 +02:00
log_event.cc Make gcov happy. 2008-03-18 16:38:12 +04:00
log_event.h Bug #27571 asynchronousity in setting mysql_query::error and 2007-10-29 15:20:59 +02:00
Makefile.am Bug#29414 HPUX build fails - 'noinst_HEADERS' does not exist 2007-06-28 11:13:18 +02:00
matherr.c my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
message.mc make dist changes for Cmake build 2006-09-01 10:32:12 +02:00
mf_iocache.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
my_decimal.cc Bug#31227: memory overrun with decimal (6,6) and zerofill and group_concat 2007-10-05 09:38:57 +02:00
my_decimal.h Bug#36023: Incorrect handling of zero length caused an assertion to fail. 2008-04-25 00:39:37 +04:00
my_lock.c my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
mysql_priv.h Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-bugteam 2008-03-28 14:31:52 +03:00
mysqld.cc fixes for warnings and compile errors for the fix of bug 26243 2008-03-29 16:12:23 +02:00
mysqld_suffix.h Many files: 2006-12-23 20:17:15 +01:00
net_serv.cc Bug#26243 mysql command line crash after control-c 2008-03-28 14:02:27 -04:00
nt_servc.cc
nt_servc.h
opt_range.cc Bug#26243 mysql command line crash after control-c 2008-03-28 14:02:27 -04:00
opt_range.h Merge bk-internal.mysql.com:/home/bk/mysql-5.0 2007-01-22 14:04:40 +02:00
opt_sum.cc Bug #30715: Assertion failed: item_field->field->real_maybe_null(), 2007-10-24 11:15:08 +03:00
parse_file.cc Polishing: add comments. 2007-04-06 18:56:39 +04:00
parse_file.h Many files: 2006-12-23 20:17:15 +01:00
password.c Merge bk-internal.mysql.com:/home/bk/mysql-5.0 2007-01-22 14:04:40 +02:00
procedure.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
procedure.h Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
protocol.cc Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-opt 2007-12-01 13:09:16 +01:00
protocol.h Backport of TIME->MYSQL_TIME / Y2K fixset 2007-05-16 10:44:59 +02:00
records.cc Fix for bug #31207: Test "join_nested" shows different strategy on IA64 2007-10-17 20:08:58 +04:00
repl_failsafe.cc Make gcov happy. 2008-03-18 16:38:12 +04:00
repl_failsafe.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
set_var.cc Bug#26243 mysql command line crash after control-c 2008-03-28 14:02:27 -04:00
set_var.h Merge mysql.com:/home/gluh/MySQL/Merge/5.0 2007-12-13 14:52:49 +04:00
slave.cc Merge amd64.(none):/src/mysql-5.0-bugteam 2008-03-28 16:01:05 -04:00
slave.h BUG#13861 - START SLAVE UNTIL may stop 1 evnt too late if 2008-02-22 19:07:07 +04:00
sp.cc Bug #30604: different flagging of time_zone_used in normal 2008-02-19 17:27:18 +02:00
sp.h Many files: 2006-12-23 20:17:15 +01:00
sp_cache.cc Many files: 2006-12-23 20:17:15 +01:00
sp_cache.h Many files: 2006-12-23 20:17:15 +01:00
sp_head.cc Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime 2008-01-23 14:04:46 -07:00
sp_head.h Bug#33618 (Crash in sp_rcontext) 2008-01-23 13:26:41 -07:00
sp_pcontext.cc Bug#26503 (Illegal SQL exception handler code causes the server to crash) 2007-03-14 12:02:32 -06:00
sp_pcontext.h Bug#26503 (Illegal SQL exception handler code causes the server to crash) 2007-03-14 12:02:32 -06:00
sp_rcontext.cc Bug#33618 (Crash in sp_rcontext) 2008-01-23 13:26:41 -07:00
sp_rcontext.h Bug#33618 (Crash in sp_rcontext) 2008-01-23 13:26:41 -07:00
spatial.cc Bug #29166: 2007-07-05 18:24:48 +03:00
spatial.h Bug #24563: MBROverlaps does not seem to function propertly. 2007-03-23 16:28:07 -06:00
sql_acl.cc Merge bk-internal:/home/bk/mysql-5.0 2008-03-28 11:26:40 +02:00
sql_acl.h Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
sql_analyse.cc fixed warnings from the fix of 26243 2008-03-29 17:50:46 +02:00
sql_analyse.h Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
sql_array.h Fix for bug #31207: Test "join_nested" shows different strategy on IA64 2007-10-17 20:08:58 +04:00
sql_base.cc Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
sql_bitmap.h Many files: 2006-12-23 20:17:15 +01:00
sql_cache.cc Bug#26243 mysql command line crash after control-c 2008-03-28 14:02:27 -04:00
sql_cache.h Bug #30269 Query cache eats memory 2007-08-17 16:55:20 +02:00
sql_class.cc BUG#33029 5.0 to 5.1 replication fails on dup key when inserting 2008-03-14 10:03:01 +08:00
sql_class.h Bug#33851 Passing UNSIGNED param to EXECUTE returns ERROR 1210 2008-02-28 11:34:08 -03:00
sql_client.cc Bug#26664 test suite times out on OS X 64bit 2007-05-24 11:21:27 +02:00
sql_crypt.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_crypt.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_cursor.cc Bug#32265 Server returns different metadata if prepared statement is used 2008-02-20 16:45:24 -03:00
sql_cursor.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_db.cc Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
sql_delete.cc Merge host.loc:/home/uchum/work/mysql-5.0 2008-03-27 15:52:55 +04:00
sql_derived.cc - renaming TMP_TABLE to NON_TRANSACTIONAL_TMP_TABLE because this is 2007-03-22 15:07:32 +01:00
sql_do.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_error.cc Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime 2007-06-20 12:46:15 +04:00
sql_error.h BUG#26976 - Missing table in merge not noted in related error msg + 2007-06-06 04:42:41 +05:00
sql_handler.cc Bug#31409 RENAME TABLE causes server crash or deadlock when used with HANDLER statements 2007-10-12 10:55:46 -03:00
sql_help.cc Fix for bug #31207: Test "join_nested" shows different strategy on IA64 2007-10-17 20:08:58 +04:00
sql_insert.cc Merge witty.:/Users/mattiasj/Public/shared-vms/bug21413-41-engines 2008-03-27 16:24:11 +01:00
sql_lex.cc Bug#27219: Aggregate functions in ORDER BY. 2008-03-27 19:49:32 +03:00
sql_lex.h Bug#27219: Aggregate functions in ORDER BY. 2008-03-27 19:49:32 +03:00
sql_list.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_list.h Merge of BUG#26624 and BUG#26625 2007-03-29 10:35:28 +04:00
sql_load.cc Fix for Bug#35469: server crash with LOAD DATA INFILE to a VIEW. 2008-03-28 18:59:13 +03:00
sql_locale.cc Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpl 2007-01-12 12:22:54 +01:00
sql_manager.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_manager.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_map.cc type conversions fixed to avoid warnings on Windows 2007-10-23 14:27:11 +05:00
sql_map.h my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_olap.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_parse.cc Bug #26461: Intrinsic data type bool (1 byte) redefined to BOOL (4 bytes) 2008-03-21 17:23:17 +02:00
sql_prepare.cc Merge host.loc:/home/uchum/work/mysql-5.0 2008-03-27 15:52:55 +04:00
sql_rename.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_repl.cc Fixes to make code compile on Windows. 2008-01-31 07:19:29 +01:00
sql_repl.h BUG#31024: STOP SLAVE does not stop attempted connect()s 2008-03-11 14:42:54 +01:00
sql_select.cc Fixed bug#36005: server crashes inside NOT IN clause subquery with 2008-04-23 02:27:23 +05:00
sql_select.h Bug #31928: Search fails on '1000-00-00' date after sql_mode change 2007-11-07 18:02:12 +02:00
sql_show.cc Bug#34529: Crash on complex Falcon I_S select after ALTER .. PARTITION BY 2008-03-19 14:32:28 +01:00
sql_sort.h Fixed bug #25798. 2007-07-01 15:33:28 -07:00
sql_state.c Many files: 2006-12-23 20:17:15 +01:00
sql_string.cc Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl 2007-12-19 14:49:04 +01:00
sql_string.h Merge bk-internal.mysql.com:/home/bk/mysql-5.0 2007-01-22 14:04:40 +02:00
sql_table.cc Fixed bug #36055: mysql_upgrade doesn't really 'upgrade' tables 2008-05-12 21:01:13 +05:00
sql_test.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
sql_trigger.cc Fixed whitespace 2007-09-04 16:40:27 -06:00
sql_trigger.h A fix and a test case for Bug#26141 mixing table types in trigger 2007-07-12 22:26:41 +04:00
sql_udf.cc Merge polly.(none):/home/kaa/src/opt/bug32020/my50-bug31445 2007-11-09 13:41:50 +03:00
sql_udf.h Remove typedef st_table_list TABLE_LIST and always use name 'TABLE_LIST'. 2007-07-06 16:18:49 +04:00
sql_union.cc fixes for warnings and compile errors for the fix of bug 26243 2008-03-29 16:12:23 +02:00
sql_update.cc Fixed bug#36676: multiupdate using LEFT JOIN updates only 2008-05-18 14:21:25 +05:00
sql_view.cc Bug#32575 - Parse error of stmt with extended comments on slave side 2008-05-08 09:41:22 +02:00
sql_view.h Bug#32890 Crash after repeated create and drop of tables and views 2008-02-21 14:58:29 -03:00
sql_yacc.yy Merge bk-internal.mysql.com:/home/bk/mysql-5.0-build 2008-04-02 10:58:37 -04:00
stacktrace.c Bug#31745 - crash handler does not work on Windows 2008-02-19 12:37:39 +01:00
stacktrace.h Bug#31745 - crash handler does not work on Windows 2008-02-19 12:37:39 +01:00
strfunc.cc Fixed compiler warnings. 2007-03-22 20:32:07 +02:00
structs.h Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 2007-10-26 15:37:38 +05:00
table.cc Bug #30825: Problems when putting a non-spatial index on a GIS column 2007-10-10 16:26:02 +03:00
table.h Bug #28702: VIEWs defined with USE/FORCE KEY ignore that request 2007-09-24 15:34:10 +03:00
thr_malloc.cc my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
time.cc Bug #29536: timestamp inconsistent in replication around 1970 2007-08-06 04:57:28 -07:00
tzfile.h Many files: 2006-12-23 20:17:15 +01:00
tztime.cc Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug26294/my50-bug26294 2008-04-03 13:19:55 -04:00
tztime.h Backport of TIME->MYSQL_TIME / Y2K fixset 2007-05-16 10:44:59 +02:00
udf_example.c Bug #30355: Incorrect ordering of UDF results 2007-11-27 17:16:52 +02:00
udf_example.def Bug #29804 UDF parameters don't contain correct string length 2007-10-17 17:54:11 -04:00
uniques.cc Fixed bug #25798. 2007-07-01 15:33:28 -07:00
unireg.cc Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-opt 2007-12-17 09:45:36 +01:00
unireg.h Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug15776/my50-bug15776 2008-04-09 12:27:51 -04:00
watchdog_mysqld