diff options
author | Martin Hansson <mhansson@mysql.com> | 2009-05-04 14:45:36 +0200 |
---|---|---|
committer | Martin Hansson <mhansson@mysql.com> | 2009-05-04 14:45:36 +0200 |
commit | fdd5a63fe6d1e81fe80c9d2e610041a3b0bc171c (patch) | |
tree | 54276802a0e835f3bb0b942c9f82b566159b2f26 /mysql-test/r/insert_select.result | |
parent | e7c4b2dfc77ae7cc8012f43b05991bdda044a459 (diff) | |
download | mariadb-git-fdd5a63fe6d1e81fe80c9d2e610041a3b0bc171c.tar.gz |
Bug#44306: Assertion fail on duplicate key error in
'INSERT ... SELECT' statements
The code that produces result rows expected that a duplicate row
error could not occur in INSERT ... SELECT statements with
unfulfilled WHERE conditions. This may happen, however, if the
SELECT list contains only aggregate functions.
Fixed by checking if an error occured before trying to send EOF
to the client.
mysql-test/r/insert_select.result:
Bug#44306: Test result
mysql-test/t/insert_select.test:
Bug#44306: Test case
sql/sql_select.cc:
Bug#44306: Fix
Diffstat (limited to 'mysql-test/r/insert_select.result')
-rw-r--r-- | mysql-test/r/insert_select.result | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/mysql-test/r/insert_select.result b/mysql-test/r/insert_select.result index 780e91ea73f..2f2cc6334a9 100644 --- a/mysql-test/r/insert_select.result +++ b/mysql-test/r/insert_select.result @@ -765,6 +765,11 @@ f1 f2 2 2 10 10 DROP TABLE t1, t2; +CREATE TABLE t1 ( a INT KEY, b INT ); +INSERT INTO t1 VALUES ( 0, 1 ); +INSERT INTO t1 ( b ) SELECT MAX( b ) FROM t1 WHERE b = 2; +ERROR 23000: Duplicate entry '0' for key 'PRIMARY' +DROP TABLE t1; SET SQL_MODE='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'; CREATE TABLE t1 (c VARCHAR(30), INDEX ix_c (c(10))); CREATE TABLE t2 (d VARCHAR(10)); |