1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-32875 SERVER_STATUS_AUTOCOMMIT set after connecting, if autocommit=0

After successful connection, server always sets SERVER_STATUS_AUTOCOMMIT
in server_status in the OK packet. This is wrong, if global variable
autocommit=0.

Fixed THD::init(), added mysql_client_test test.

Thanks to Diego Dupin for the providing the patch.

Signed-off-by: Vladislav Vaintroub <vvaintroub@gmail.com>
This commit is contained in:
Vladislav Vaintroub
2023-11-24 18:48:27 +01:00
parent 85c157808b
commit 934db2efb6
2 changed files with 42 additions and 1 deletions

View File

@ -1227,7 +1227,9 @@ void THD::init()
user_time.val= start_time= start_time_sec_part= 0;
server_status= SERVER_STATUS_AUTOCOMMIT;
server_status= 0;
if (variables.option_bits & OPTION_AUTOCOMMIT)
server_status|= SERVER_STATUS_AUTOCOMMIT;
if (variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES)
server_status|= SERVER_STATUS_NO_BACKSLASH_ESCAPES;
if (variables.sql_mode & MODE_ANSI_QUOTES)