maria-developers team mailing list archive
Mailing list archive
Re: 980a5c31880: MDEV-14572: Assertion `! is_set()' failed in Diagnostics_area::set_eof_status upon EXPLAIN UPDATE in PS
Am 29.01.2018 um 01:02 schrieb Sergei Golubchik:
It is question to them who made explain for non SELECT statements
(probably Sergey Petrunia) as I can see it just have a bit different
On Jan 28, Oleksandr Byelkin wrote:
Flag in SELECT_LEX options dropped at the end of execution (in our case
prepare). All commands where EXPLAIN is possible restore the flag in main
SELECT_LEX (in mysql_explain_union()) except UPDATE (because it do
not use mysql_explain_union()
for explain). Without the flag it first try to send OK (as part of update)
then EOF as part of EXPLAIN.
1. Why does it not use mysql_explain_union() ?
2. Why EXPLAIN flag is need to be removed and restored anyway?
Because it is how our EXPLAIN works (written without taking into account
re-execution). If remove the flag cleanup it will change output of
prepared explain EXPLAIN.
3. Please append the following to the commit comment:
Without it, mysql_update() didn't know that there will be EXPLAIN
result set and was sending OK at the end of the update, which
conflicted with the EOF sent later by EXPLAIN.
On Sun, Jan 28, 2018 at 2:45 PM, Sergei Golubchik <serg@xxxxxxxxxxx> wrote:
On Dec 22, Oleksandr Byelkin wrote:
revision-id: 980a5c318803d6aa7355e019869597976dcf19bf (mariadb-10.0.33-37-g980a5c31880)
author: Oleksandr Byelkin
committer: Oleksandr Byelkin
timestamp: 2017-12-22 14:00:10 +0100
MDEV-14572: Assertion `! is_set()' failed in Diagnostics_area::set_eof_status upon EXPLAIN UPDATE in PS
Restore EXPAIN flag in SELECT_LEX before execution multi-update by flag in LEX
(the same but in other way made before INSERT/DELETE/SELECT)
Please explain what was the reason for the bug, why the status was set
twice, and how your change fixes it.
Chief Architect MariaDB
Mailing list: https://launchpad.net/~maria-developers
Post to : maria-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp