diff options
author | unknown <tomas@whalegate.ndb.mysql.com> | 2007-11-06 10:27:56 +0100 |
---|---|---|
committer | unknown <tomas@whalegate.ndb.mysql.com> | 2007-11-06 10:27:56 +0100 |
commit | ea9b647d6922f3bfccdfc6966783b76ba0edc9fb (patch) | |
tree | a9784de144f443250c230c1e3857c9b0f56a6589 /sql/ha_ndbcluster_binlog.cc | |
parent | ac7e0c857f7d44cb3d7b8d7696dc5c4d044167f6 (diff) | |
download | mariadb-git-ea9b647d6922f3bfccdfc6966783b76ba0edc9fb.tar.gz |
break out tuple data read
sql/ha_ndbcluster_binlog.cc:
more state saving
storage/ndb/tools/restore/Restore.cpp:
ndb:
break out tuple data read for ndb_restore
more save state in run query
Diffstat (limited to 'sql/ha_ndbcluster_binlog.cc')
-rw-r--r-- | sql/ha_ndbcluster_binlog.cc | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/sql/ha_ndbcluster_binlog.cc b/sql/ha_ndbcluster_binlog.cc index 93f7027d788..4bb17dffa4a 100644 --- a/sql/ha_ndbcluster_binlog.cc +++ b/sql/ha_ndbcluster_binlog.cc @@ -241,19 +241,22 @@ static void dbug_print_table(const char *info, TABLE *table) static void run_query(THD *thd, char *buf, char *end, const int *no_print_error, my_bool disable_binlog) { - ulong save_query_length= thd->query_length; - char *save_query= thd->query; - struct system_variables save_variables= thd->variables; - struct system_status_var save_status_var= thd->status_var; + ulong save_thd_query_length= thd->query_length; + char *save_thd_query= thd->query; + struct system_variables save_thd_variables= thd->variables; + struct system_status_var save_thd_status_var= thd->status_var; + THD_TRANS save_thd_transaction_all= thd->transaction.all; + THD_TRANS save_thd_transaction_stmt= thd->transaction.stmt; ulonglong save_thd_options= thd->options; DBUG_ASSERT(sizeof(save_thd_options) == sizeof(thd->options)); - NET save_net= thd->net; + NET save_thd_net= thd->net; const char* found_semicolon= NULL; bzero((char*) &thd->net, sizeof(NET)); thd->query_length= end - buf; thd->query= buf; thd->variables.pseudo_thread_id= thread_id; + thd->transaction.stmt.modified_non_trans_table= FALSE; if (disable_binlog) thd->options&= ~OPTION_BIN_LOG; @@ -276,11 +279,13 @@ static void run_query(THD *thd, char *buf, char *end, } thd->options= save_thd_options; - thd->query_length= save_query_length; - thd->query= save_query; - thd->variables= save_variables; - thd->status_var= save_status_var; - thd->net= save_net; + thd->query_length= save_thd_query_length; + thd->query= save_thd_query; + thd->variables= save_thd_variables; + thd->status_var= save_thd_status_var; + thd->transaction.all= save_thd_transaction_all; + thd->transaction.stmt= save_thd_transaction_stmt; + thd->net= save_thd_net; if (thd == injector_thd) { |