mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Applied innodb-5.0-ss609 snapshot.
Fixed BUG#19727 "InnoDB crashed server and crashed tables are not recoverable".
This commit is contained in:
@ -2570,14 +2570,14 @@ do not allow the discard. We also reserve the data dictionary latch. */
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
funct_exit:
|
funct_exit:
|
||||||
|
trx_commit_for_mysql(trx);
|
||||||
|
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
|
|
||||||
if (graph) {
|
if (graph) {
|
||||||
que_graph_free(graph);
|
que_graph_free(graph);
|
||||||
}
|
}
|
||||||
|
|
||||||
trx_commit_for_mysql(trx);
|
|
||||||
|
|
||||||
trx->op_info = "";
|
trx->op_info = "";
|
||||||
|
|
||||||
return((int) err);
|
return((int) err);
|
||||||
@ -2707,10 +2707,10 @@ row_import_tablespace_for_mysql(
|
|||||||
}
|
}
|
||||||
|
|
||||||
funct_exit:
|
funct_exit:
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
|
||||||
|
|
||||||
trx_commit_for_mysql(trx);
|
trx_commit_for_mysql(trx);
|
||||||
|
|
||||||
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
|
|
||||||
trx->op_info = "";
|
trx->op_info = "";
|
||||||
|
|
||||||
return((int) err);
|
return((int) err);
|
||||||
@ -3398,6 +3398,8 @@ fputs(" InnoDB: You are trying to drop table ", stderr);
|
|||||||
}
|
}
|
||||||
funct_exit:
|
funct_exit:
|
||||||
|
|
||||||
|
trx_commit_for_mysql(trx);
|
||||||
|
|
||||||
if (locked_dictionary) {
|
if (locked_dictionary) {
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
}
|
}
|
||||||
@ -3408,8 +3410,6 @@ funct_exit:
|
|||||||
|
|
||||||
que_graph_free(graph);
|
que_graph_free(graph);
|
||||||
|
|
||||||
trx_commit_for_mysql(trx);
|
|
||||||
|
|
||||||
trx->op_info = "";
|
trx->op_info = "";
|
||||||
|
|
||||||
#ifndef UNIV_HOTBACKUP
|
#ifndef UNIV_HOTBACKUP
|
||||||
@ -3488,10 +3488,10 @@ loop:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
|
||||||
|
|
||||||
trx_commit_for_mysql(trx);
|
trx_commit_for_mysql(trx);
|
||||||
|
|
||||||
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
|
|
||||||
trx->op_info = "";
|
trx->op_info = "";
|
||||||
|
|
||||||
return(err);
|
return(err);
|
||||||
@ -3905,6 +3905,8 @@ row_rename_table_for_mysql(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
funct_exit:
|
funct_exit:
|
||||||
|
trx_commit_for_mysql(trx);
|
||||||
|
|
||||||
if (!recovering_temp_table) {
|
if (!recovering_temp_table) {
|
||||||
row_mysql_unlock_data_dictionary(trx);
|
row_mysql_unlock_data_dictionary(trx);
|
||||||
}
|
}
|
||||||
@ -3917,8 +3919,6 @@ funct_exit:
|
|||||||
mem_heap_free(heap);
|
mem_heap_free(heap);
|
||||||
}
|
}
|
||||||
|
|
||||||
trx_commit_for_mysql(trx);
|
|
||||||
|
|
||||||
trx->op_info = "";
|
trx->op_info = "";
|
||||||
|
|
||||||
return((int) err);
|
return((int) err);
|
||||||
|
@ -1064,11 +1064,12 @@ row_sel_try_search_shortcut(
|
|||||||
ut_ad(plan->pcur.latch_mode == node->latch_mode);
|
ut_ad(plan->pcur.latch_mode == node->latch_mode);
|
||||||
|
|
||||||
plan->n_rows_fetched++;
|
plan->n_rows_fetched++;
|
||||||
|
ret = SEL_FOUND;
|
||||||
func_exit:
|
func_exit:
|
||||||
if (UNIV_LIKELY_NULL(heap)) {
|
if (UNIV_LIKELY_NULL(heap)) {
|
||||||
mem_heap_free(heap);
|
mem_heap_free(heap);
|
||||||
}
|
}
|
||||||
return(SEL_FOUND);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
|
@ -2196,3 +2196,16 @@ drop table t2, t1;
|
|||||||
#
|
#
|
||||||
--error ER_TABLE_CANT_HANDLE_SPKEYS
|
--error ER_TABLE_CANT_HANDLE_SPKEYS
|
||||||
create table t1 (g geometry not null, spatial gk(g)) engine=innodb;
|
create table t1 (g geometry not null, spatial gk(g)) engine=innodb;
|
||||||
|
|
||||||
|
#######################################################################
|
||||||
|
# #
|
||||||
|
# Please, DO NOT TOUCH this file as well as the innodb.result file. #
|
||||||
|
# These files are to be modified ONLY BY INNOBASE guys. #
|
||||||
|
# #
|
||||||
|
# Use innodb_mysql.[test|result] files instead. #
|
||||||
|
# #
|
||||||
|
# If nevertheless you need to make some changes here, please, forward #
|
||||||
|
# your commit message To: dev@innodb.com Cc: dev-innodb@mysql.com #
|
||||||
|
# (otherwise your changes may be erased). #
|
||||||
|
# #
|
||||||
|
#######################################################################
|
||||||
|
Reference in New Issue
Block a user