###############################################################################
# Bug#17588419: INSERT ON DUPLICATE KEY UPDATE FAILING AFTER MYSQL 5.6
# UPGRADE.
#
# Problem:
# ========
# After upgrading a MySQL 5.5.23 slave to 5.6.14 (the master still runs 5.5.23)
# on executing INSERT ON DUPLICATE KEY following error is reported in SBR.
#
# [ERROR] Slave SQL: Error 'Auto-increment value in UPDATE conflicts with
# internally generated values' on query.
#
# Test:
# =====
# Execute INSERT ON DUPLICATE KEY UPDATE statements on master and try to sync
# master with slave. With the bug sync operation will fail with
# ER_AUTO_INCREMENT_CONFLICT. Post fix sync operation should succeed.
# Note:
# As part of the bug fix the issue is fixed only with innodb storage engine.
###############################################################################
--source include/master-slave.inc

--disable_query_log
CALL mtr.add_suppression("Unsafe statement written to the binary log using statement format*");
--enable_query_log

--connection master
CREATE TABLE t(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,k INT,UNIQUE KEY(k)) ENGINE=InnoDB;
--disable_warnings
INSERT INTO t(k) VALUES (1), (2), (3);
INSERT INTO t(k) VALUES (2), (4), (5) ON DUPLICATE KEY UPDATE id=10;
--enable_warnings
--source include/sync_slave_sql_with_master.inc

--connection master
-- let $diff_tables=master:t,slave:t
-- source include/diff_tables.inc

DROP TABLE t;
--source include/rpl_end.inc
