[MDEV-5973] MySQL Bug#11757486:49539: NON-DESCRIPTIVE ERR (ERROR 0 FROM STORAGE ENGINE) WITH MULTI-TABLE UPDATE Created: 2014-03-28  Updated: 2016-06-21  Resolved: 2016-06-21

Status: Closed
Project: MariaDB Server
Component/s: OTHER
Affects Version/s: 10.0.9
Fix Version/s: 10.0.26

Type: Bug Priority: Major
Reporter: Sergey Vojtovich Assignee: Oleksandr Byelkin
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
PartOf
is part of MDEV-4784 merge test cases from 5.6 Stalled

 Description   

Test case for MySQL " Bug#11757486:49539: NON-DESCRIPTIVE ERR (ERROR 0 FROM STORAGE ENGINE) WITH MULTI-TABLE UPDATE" fails in 10.0.

Note that MariaDB returns proper error message. The problem is that IGNORE has no effect in multi-table update.

Relevant revision:

revno: 3803.1.9
committer: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
branch nick: mysql-trunk-11757486
timestamp: Thu 2012-05-10 14:19:23 +0530
message:
  Bug#11757486:49539: NON-DESCRIPTIVE ERR (ERROR 0 FROM STORAGE ENGINE) WITH
                      MULTI-TABLE UPDATE
 
  Analysis:
  ---------
  Multiple-table UPDATE statement with IGNORE keyword in strict mode
  having invalid or missing values could trigger an assertion in debug
  mode. However on a release build, the query execution fails reporting
  inappropriate errors.
 
  The multiple-table UPDATE does not test for IGNORE to decide
  whether the query should be aborted in case of any warning.This causes
  the warning to be converted to error(STRICT MODE behavior). However
  since the errors are to be suppressed due to the IGNORE keyword, the
  diagnostic area is not set to DA_ERROR.
 
  Since the diagnostic area remains DA_EMPTY, an ASSERT is triggered
  which causes the mysqld to crash on a debug build. On a release build
  the query execution fails with incorrect errors being reported.
 
  Fix:
  ---
  To test for IGNORE during the execution of the multiple-table UPDATE
  statement. This causes the successful execution of the query with
  appropriate warnings being reported.



 Comments   
Comment by Oleksandr Byelkin [ 2016-06-20 ]

9e3a5842a86a4f3309a14a7bd1d4310348a05cfe is revision number in git

Comment by Oleksandr Byelkin [ 2016-06-20 ]

OK, the real problem of the bug is different reaction on IGNORE for UPDATE and multi-table UPDATE due to different ways to calculate condition of turning errors to warnings.

Comment by Oleksandr Byelkin [ 2016-06-20 ]

revision-id: dd32ca182246fccc7ba8d7c612af3ddd27fbf4af (mariadb-10.0.25-11-gdd32ca1)
parent(s): 70ad689b11bfbd8a30a777f4893a5384628c00e7
committer: Oleksandr Byelkin
timestamp: 2016-06-20 14:35:58 +0200
message:

MDEV-5973: MySQL Bug#11757486:49539: NON-DESCRIPTIVE ERR (ERROR 0 FROM STORAGE ENGINE) WITH MULTI-TABLE UPDATE

Condition in processing IGNORE clause for UPDATE & multi-table UPDATE made the same.

Comment by Oleksandr Byelkin [ 2016-06-21 ]

revision-id: 13f13b7b2bede46c90772a105a502c33fe93f4d1 (mariadb-10.0.25-11-g13f13b7)
parent(s): 70ad689b11bfbd8a30a777f4893a5384628c00e7
committer: Oleksandr Byelkin
timestamp: 2016-06-21 18:37:22 +0200
message:

MDEV-5973: MySQL Bug#11757486:49539: NON-DESCRIPTIVE ERR (ERROR 0 FROM STORAGE ENGINE) WITH MULTI-TABLE UPDATE

Condition in processing IGNORE clause for UPDATE & multi-table UPDATE made the same.

Generated at Thu Feb 08 07:08:25 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.