mariadb/storage
V Narayanan 5a5b5c8256 Bug#45800 crash when replacing into a merge table and there is a duplicate
A REPLACE in the MERGE engine is actually a REPLACE
into one (FIRST or LAST) of the underlying MyISAM
tables. So in effect the server works on the meta
data of the MERGE table, while the real insert happens
in the MyISAM table.

The MERGE table has no index, while MyISAM has a
unique index. When a REPLACE into a MERGE table (
and the REPLACE conflicts with a duplicate in a
child table) is done, we try to access the duplicate
key information for the MERGE table. This information
actually does not exist, hence this results in a crash.

The problem can be resolved by modifying the MERGE
engine to provide us the duplicate key information
directly, instead of just returning the MyISAM index
number as the error key. Then the SQL layer (or "the
server") does not try to access the key_info of the
MERGE table, which does not exist.

The current patch modifies the MERGE engine to provide
the position for a record where a unique key violation
occurs.
2009-07-30 16:04:41 +05:30
..
archive Bug #39802 On Windows, 32-bit time_t should be enforced 2009-05-13 15:41:24 +05:30
blackhole Added "Sun Microsystems, Inc." to copyright headers on files modified 2008-11-10 21:21:49 +01:00
csv compiler warning fix 2009-03-24 13:02:01 +04:00
example Merge trift2.:/MySQL/M51/mysql-5.1 2008-03-14 14:41:08 +01:00
federated Merge from 5.0-bugteam 2009-06-17 16:56:44 +02:00
heap Bug#35111 - Truncate a MyISAM partitioned table does not reset 2009-07-08 17:41:34 +05:30
ibmdb2i Bug#45983 ibmdb2i_create_index_option=1 not working for primary key 2009-07-08 14:40:01 +05:30
innobase merge 5.0-bugteam to 5.1-bugteam 2009-07-24 12:15:06 +05:30
myisam Merge from 5.0 2009-07-24 21:04:55 +05:00
myisammrg Bug#45800 crash when replacing into a merge table and there is a duplicate 2009-07-30 16:04:41 +05:30
ndb Add missing newline to usage message of ndb_print_backup_file (Bug #34989) 2009-04-28 11:21:47 -07:00
Makefile.am Add the IBM DB2 for i storage engine. 2009-02-15 03:18:30 +01:00