Fixed two bugs of which one was older.

1. in query_classifier.cc autocommit_enabled, and transaction_active variables maintained their values across different sessions. Now those values are stored in each router_client_ses object.
2. As a part of implementation of MAX-95 session variables were added to BACKEND struct which is shared with all sessions using the SERVICE which the particular BACKEND serves. Now each router_client_ses object has a backend reference struct which includes pointer to BACKEND, DCB and to session command cursor.

Added test - set_autocommit_disabled.sql, test_after_autocommit_disabled.sql - to check that session variable is discarded when session where it belongs terminates.
This commit is contained in:
VilhoRaatikka
2014-04-28 23:33:49 +03:00
parent 28bc3509cc
commit c927057b5c
10 changed files with 505 additions and 320 deletions

View File

@ -764,7 +764,6 @@ static int is_autocommit_stmt(
{
String str(target, sizeof(target), system_charset_info);
String* res = item->val_str(&str);
int rc;
if ((rc = find_type(&bool_typelib, res->ptr(), res->length(), false)))
{