mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
474fe6d9d9
and small collateral changes mysql-test/lib/My/Test.pm: somehow with "print" we get truncated writes sometimes mysql-test/suite/perfschema/r/digest_table_full.result: md5 hashes of statement digests differ, because yacc token codes are different in mariadb mysql-test/suite/perfschema/r/dml_handler.result: host table is not ported over yet mysql-test/suite/perfschema/r/information_schema.result: host table is not ported over yet mysql-test/suite/perfschema/r/nesting.result: this differs, because we don't rewrite general log queries, and multi-statement packets are logged as a one entry. this result file is identical to what mysql-5.6.5 produces with the --log-raw option. mysql-test/suite/perfschema/r/relaylog.result: MariaDB modifies the binlog index file directly, while MySQL 5.6 has a feature "crash-safe binlog index" and modifies a special "crash-safe" shadow copy of the index file and then moves it over. That's why this test shows "NONE" index file writes in MySQL and "MANY" in MariaDB. mysql-test/suite/perfschema/r/server_init.result: MariaDB initializes the "manager" resources from the "manager" thread, and starts this thread only when --flush-time is not 0. MySQL 5.6 initializes "manager" resources unconditionally on server startup. mysql-test/suite/perfschema/r/stage_mdl_global.result: this differs, because MariaDB disables query cache when query_cache_size=0. MySQL does not do that, and this causes useless mutex locks and waits. mysql-test/suite/perfschema/r/statement_digest.result: md5 hashes of statement digests differ, because yacc token codes are different in mariadb mysql-test/suite/perfschema/r/statement_digest_consumers.result: md5 hashes of statement digests differ, because yacc token codes are different in mariadb mysql-test/suite/perfschema/r/statement_digest_long_query.result: md5 hashes of statement digests differ, because yacc token codes are different in mariadb mysql-test/suite/rpl/r/rpl_mixed_drop_create_temp_table.result: will be updated to match 5.6 when alfranio.correia@oracle.com-20110512172919-c1b5kmum4h52g0ni and anders.song@greatopensource.com-20110105052107-zoab0bsf5a6xxk2y are merged mysql-test/suite/rpl/r/rpl_non_direct_mixed_mixing_engines.result: will be updated to match 5.6 when anders.song@greatopensource.com-20110105052107-zoab0bsf5a6xxk2y is merged
50 lines
1.1 KiB
Text
50 lines
1.1 KiB
Text
#
|
|
# Bug#12661768 UPDATE IGNORE CRASHES SERVER IF TABLE IS INNODB AND IT IS
|
|
# PARENT FOR OTHER ONE
|
|
#
|
|
|
|
-- source include/have_innodb.inc
|
|
|
|
SET SESSION foreign_key_checks=0;
|
|
|
|
# only interested that the "UPDATE IGNORE" at the end does not crash the server
|
|
|
|
-- disable_query_log
|
|
-- disable_result_log
|
|
|
|
SET NAMES utf8;
|
|
|
|
-- let $t1_name = bug12661768_1
|
|
-- let $t2_name = bug12661768_2
|
|
-- let $fk_name = ab_on_2
|
|
-- let $key_str = 'bbb'
|
|
|
|
eval DROP TABLE IF EXISTS `$t2_name`, `$t1_name`;
|
|
|
|
eval CREATE TABLE `$t1_name` (
|
|
a INT,
|
|
b VARCHAR(512),
|
|
PRIMARY KEY (a, b)
|
|
) ENGINE=INNODB;
|
|
|
|
eval CREATE TABLE `$t2_name` (
|
|
id INT,
|
|
a INT,
|
|
b VARCHAR(512),
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY `$fk_name` (a, b),
|
|
FOREIGN KEY (a, b) REFERENCES `$t1_name` (a, b)
|
|
ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=INNODB;
|
|
|
|
eval INSERT INTO `$t1_name` VALUES (1, $key_str);
|
|
eval INSERT INTO `$t2_name` VALUES (100, 1, $key_str), (101, 3, $key_str);
|
|
|
|
SET SESSION foreign_key_checks=1;
|
|
|
|
-- enable_result_log
|
|
|
|
-- error ER_FOREIGN_DUPLICATE_KEY_WITH_CHILD_INFO
|
|
eval UPDATE IGNORE `$t1_name` SET a = 3;
|
|
|
|
eval DROP TABLE `$t2_name`, `$t1_name`;
|