mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Bug#12713 "Error in a stored function called from a SELECT doesn't
cause ROLLBACK of statement", part 1. Review fixes. Do not send OK/EOF packets to the client until we reached the end of the current statement. This is a consolidation, to keep the functionality that is shared by all SQL statements in one place in the server. Currently this functionality includes: - close_thread_tables() - log_slow_statement(). After this patch and the subsequent patch for Bug#12713, it shall also include: - ha_autocommit_or_rollback() - net_end_statement() - query_cache_end_of_result(). In future it may also include: - mysql_reset_thd_for_next_command().
This commit is contained in:
@ -75,6 +75,7 @@ public:
|
||||
return 0;
|
||||
}
|
||||
virtual bool flush();
|
||||
virtual void end_partial_result_set(THD *thd);
|
||||
virtual void prepare_for_resend()=0;
|
||||
|
||||
virtual bool store_null()=0;
|
||||
@ -173,9 +174,7 @@ public:
|
||||
|
||||
void send_warning(THD *thd, uint sql_errno, const char *err=0);
|
||||
void net_send_error(THD *thd, uint sql_errno=0, const char *err=0);
|
||||
void send_ok(THD *thd, ha_rows affected_rows=0L, ulonglong id=0L,
|
||||
const char *info=0);
|
||||
void send_eof(THD *thd);
|
||||
void net_end_statement(THD *thd);
|
||||
bool send_old_password_request(THD *thd);
|
||||
uchar *net_store_data(uchar *to,const uchar *from, size_t length);
|
||||
uchar *net_store_data(uchar *to,int32 from);
|
||||
|
Reference in New Issue
Block a user