Hi, Rucha! On Oct 21, Rucha Deodhar wrote:
revision-id: 1060cc4235a (mariadb-10.2.31-438-g1060cc4235a) parent(s): 80075ba011f author: Rucha Deodhar <rucha.deodhar@mariadb.com> committer: Rucha Deodhar <rucha.deodhar@mariadb.com> timestamp: 2020-09-22 17:12:57 +0530 message:
MDEV-23500: Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed in Diagnostics_area::set_ok_status upon multi-table update
Analysis: When NULL field is copied to NOT-NULL so there is error but this error is not reported so we get the failure. Fix: Return the error state.
diff --git a/mysql-test/r/update.result b/mysql-test/r/update.result index 9e19abc4e9c..c1d37fc36e7 100644 --- a/mysql-test/r/update.result +++ b/mysql-test/r/update.result @@ -731,4 +731,14 @@ INSERT INTO t2 VALUES UPDATE t1,t2 SET t1.i1 = -39 WHERE t2.d1 <> t1.i1 AND t2.d1 = t1.d2; ERROR 22007: Incorrect datetime value: '19' for column `test`.`t1`.`i1` at row 1 DROP TABLE t1,t2; +# +# MDEV-23500: Assertion `!is_set() || (m_status == DA_OK_BULK && +# is_bulk_op())' failed in Diagnostics_area::set_ok_status upon +# multi-table update +# +CREATE TABLE t (f INT NOT NULL); +INSERT INTO t VALUES (0),(0); +UPDATE t AS t1 LEFT JOIN t AS t2 ON t1.f <=> t2.f SET t2.f = NULL; +ERROR 01000: Data truncated for column 'f' at row 4
with a single-table update I get MariaDB [test]> update t set f=NULL; ERROR 1048 (23000): Column 'f' cannot be null should multi-table update produce the same error?
+DROP TABLE t;
Regards, Sergei VP of MariaDB Server Engineering and security@mariadb.org