1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-03 05:41:09 +03:00

Merge 10.0 into 10.1

This commit is contained in:
Marko Mäkelä
2018-05-09 15:58:04 +03:00
4 changed files with 8 additions and 4 deletions

View File

@@ -507,7 +507,8 @@ dict_table_try_drop_aborted(
ut_ad(table->id == table_id); ut_ad(table->id == table_id);
} }
if (table && table->n_ref_count == ref_count && table->drop_aborted) { if (table && table->n_ref_count == ref_count && table->drop_aborted
&& !UT_LIST_GET_FIRST(table->locks)) {
/* Silence a debug assertion in row_merge_drop_indexes(). */ /* Silence a debug assertion in row_merge_drop_indexes(). */
ut_d(table->n_ref_count++); ut_d(table->n_ref_count++);
row_merge_drop_indexes(trx, table, TRUE); row_merge_drop_indexes(trx, table, TRUE);

View File

@@ -3108,7 +3108,8 @@ row_merge_drop_indexes(
A concurrent purge will be prevented by dict_operation_lock. */ A concurrent purge will be prevented by dict_operation_lock. */
if (!locked && table->n_ref_count > 1) { if (!locked && (table->n_ref_count > 1
|| UT_LIST_GET_FIRST(table->locks))) {
/* We will have to drop the indexes later, when the /* We will have to drop the indexes later, when the
table is guaranteed to be no longer in use. Mark the table is guaranteed to be no longer in use. Mark the
indexes as incomplete and corrupted, so that other indexes as incomplete and corrupted, so that other

View File

@@ -507,7 +507,8 @@ dict_table_try_drop_aborted(
ut_ad(table->id == table_id); ut_ad(table->id == table_id);
} }
if (table && table->n_ref_count == ref_count && table->drop_aborted) { if (table && table->n_ref_count == ref_count && table->drop_aborted
&& !UT_LIST_GET_FIRST(table->locks)) {
/* Silence a debug assertion in row_merge_drop_indexes(). */ /* Silence a debug assertion in row_merge_drop_indexes(). */
ut_d(table->n_ref_count++); ut_d(table->n_ref_count++);
row_merge_drop_indexes(trx, table, TRUE); row_merge_drop_indexes(trx, table, TRUE);

View File

@@ -3111,7 +3111,8 @@ row_merge_drop_indexes(
A concurrent purge will be prevented by dict_operation_lock. */ A concurrent purge will be prevented by dict_operation_lock. */
if (!locked && table->n_ref_count > 1) { if (!locked && (table->n_ref_count > 1
|| UT_LIST_GET_FIRST(table->locks))) {
/* We will have to drop the indexes later, when the /* We will have to drop the indexes later, when the
table is guaranteed to be no longer in use. Mark the table is guaranteed to be no longer in use. Mark the
indexes as incomplete and corrupted, so that other indexes as incomplete and corrupted, so that other