diff options
author | Oleksandr Byelkin <sanja@mariadb.com> | 2020-06-22 18:21:21 +0200 |
---|---|---|
committer | Oleksandr Byelkin <sanja@mariadb.com> | 2021-07-15 16:28:13 +0200 |
commit | a7d880f0b095939118594ecbeba953959ae8e351 (patch) | |
tree | 4bd583a11bf5fc42327bdb8b069fb7673cb54a47 /sql/protocol.cc | |
parent | 826eab3f9b28dbc370e5d7a2f81dc42d2f09ed40 (diff) | |
download | mariadb-git-a7d880f0b095939118594ecbeba953959ae8e351.tar.gz |
MDEV-21916: COM_STMT_BULK_EXECUTE with RETURNING insert wrong values
The problem is that array binding uses net buffer to read parameters for each
execution while each execiting with RETURNING write in the same buffer.
Solution is to allocate new net buffer to avoid changing buffer we are reading
from.
Diffstat (limited to 'sql/protocol.cc')
-rw-r--r-- | sql/protocol.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/protocol.cc b/sql/protocol.cc index 08b874adba1..eb50b02cf3c 100644 --- a/sql/protocol.cc +++ b/sql/protocol.cc @@ -598,6 +598,7 @@ void Protocol::end_statement() thd->get_stmt_da()->get_sqlstate()); break; case Diagnostics_area::DA_EOF: + case Diagnostics_area::DA_EOF_BULK: error= send_eof(thd->server_status, thd->get_stmt_da()->statement_warn_count()); break; |