From f853fbc9f43e76018752cab3b91e04157dd9b097 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 1 Dec 2005 14:26:46 +0400 Subject: Fix for bug #14304: auto_increment field incorrect set from within stored procedure (insert select). sql/sp_head.cc: Fix for bug #14304: auto_increment field incorrect set from within stored procedure (insert select). - call thd->cleanup_after_query() to clean next_insert_id. sql/sql_class.cc: Fix for bug #14304: auto_increment field incorrect set from within stored procedure (insert select). - save/restore clear_next_insert_id sql/sql_class.h: Fix for bug #14304: auto_increment field incorrect set from within stored procedure (insert select). - clear_next_insert_id added --- sql/sql_class.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sql/sql_class.cc') diff --git a/sql/sql_class.cc b/sql/sql_class.cc index 70dfaca53d3..00669ee5c73 100644 --- a/sql/sql_class.cc +++ b/sql/sql_class.cc @@ -1948,6 +1948,7 @@ void THD::reset_sub_statement_state(Sub_statement_state *backup, backup->last_insert_id= last_insert_id; backup->next_insert_id= next_insert_id; backup->insert_id_used= insert_id_used; + backup->clear_next_insert_id= clear_next_insert_id; backup->limit_found_rows= limit_found_rows; backup->examined_row_count= examined_row_count; backup->sent_row_count= sent_row_count; @@ -1999,6 +2000,7 @@ void THD::restore_sub_statement_state(Sub_statement_state *backup) last_insert_id= backup->last_insert_id; next_insert_id= backup->next_insert_id; insert_id_used= backup->insert_id_used; + clear_next_insert_id= backup->clear_next_insert_id; limit_found_rows= backup->limit_found_rows; sent_row_count= backup->sent_row_count; client_capabilities= backup->client_capabilities; -- cgit v1.2.1