diff options
-rw-r--r-- | storage/innobase/fil/fil0crypt.cc | 5 | ||||
-rw-r--r-- | storage/xtradb/fil/fil0crypt.cc | 10 |
2 files changed, 13 insertions, 2 deletions
diff --git a/storage/innobase/fil/fil0crypt.cc b/storage/innobase/fil/fil0crypt.cc index 1d9dc50d73f..f32a8fc7608 100644 --- a/storage/innobase/fil/fil0crypt.cc +++ b/storage/innobase/fil/fil0crypt.cc @@ -2258,6 +2258,11 @@ fil_crypt_complete_rotate_space( crypt_data->rotate_state.flushing = false; mutex_exit(&crypt_data->mutex); } + } else { + mutex_enter(&crypt_data->mutex); + ut_a(crypt_data->rotate_state.active_threads > 0); + crypt_data->rotate_state.active_threads--; + mutex_exit(&crypt_data->mutex); } } diff --git a/storage/xtradb/fil/fil0crypt.cc b/storage/xtradb/fil/fil0crypt.cc index 14b6bd1306d..8c388303070 100644 --- a/storage/xtradb/fil/fil0crypt.cc +++ b/storage/xtradb/fil/fil0crypt.cc @@ -2258,6 +2258,11 @@ fil_crypt_complete_rotate_space( crypt_data->rotate_state.flushing = false; mutex_exit(&crypt_data->mutex); } + } else { + mutex_enter(&crypt_data->mutex); + ut_a(crypt_data->rotate_state.active_threads > 0); + crypt_data->rotate_state.active_threads--; + mutex_exit(&crypt_data->mutex); } } @@ -2543,8 +2548,9 @@ fil_space_crypt_close_tablespace( if (now >= last + 30) { ib_logf(IB_LOG_LEVEL_WARN, - "Waited %ld seconds to drop space: %s(" ULINTPF ").", - now - start, space->name, space->id); + "Waited %ld seconds to drop space: %s (" ULINTPF + ") active threads %u flushing=%d.", + now - start, space->name, space->id, cnt, flushing); last = now; } } |