summaryrefslogtreecommitdiff
path: root/sql/protocol.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/protocol.cc')
-rw-r--r--sql/protocol.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/sql/protocol.cc b/sql/protocol.cc
index a25a2837703..9c5df04e404 100644
--- a/sql/protocol.cc
+++ b/sql/protocol.cc
@@ -497,6 +497,8 @@ static uchar *net_store_length_fast(uchar *packet, uint length)
void Protocol::end_statement()
{
+ /* sanity check*/
+ DBUG_ASSERT_IF_WSREP(!(WSREP(thd) && thd->wsrep_conflict_state == REPLAYING));
DBUG_ENTER("Protocol::end_statement");
DBUG_ASSERT(! thd->get_stmt_da()->is_sent());
bool error= FALSE;
@@ -874,7 +876,7 @@ bool Protocol::send_result_set_metadata(List<Item> *list, uint flags)
DBUG_RETURN(prepare_for_send(list->elements));
err:
- my_message(ER_OUT_OF_RESOURCES, ER(ER_OUT_OF_RESOURCES),
+ my_message(ER_OUT_OF_RESOURCES, ER_THD(thd, ER_OUT_OF_RESOURCES),
MYF(0)); /* purecov: inspected */
DBUG_RETURN(1); /* purecov: inspected */
}
@@ -1254,7 +1256,7 @@ bool Protocol_text::send_out_parameters(List<Item_param> *sp_params)
continue; // It's an IN-parameter.
Item_func_set_user_var *suv=
- new Item_func_set_user_var(*user_var_name, item_param);
+ new (thd->mem_root) Item_func_set_user_var(thd, *user_var_name, item_param);
/*
Item_func_set_user_var is not fixed after construction, call
fix_fields().
@@ -1526,7 +1528,7 @@ bool Protocol_binary::send_out_parameters(List<Item_param> *sp_params)
if (!item_param->get_out_param_info())
continue; // It's an IN-parameter.
- if (out_param_lst.push_back(item_param))
+ if (out_param_lst.push_back(item_param, thd->mem_root))
return TRUE;
}
}