-
Nisha Gopalakrishnan authored
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.
Nisha Gopalakrishnan authoredMULTI-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.
Loading