From c695ccd27e753fe9ed67dc28443de7639203a4bc Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 22 Jan 2005 04:45:22 +0200 Subject: fil0fil.c: Fix a race condition that could cause the assertion space->n_pending_flushes == 0 to fail in fil0fil.c, in fil_space_free(), in DROP TABLE or in ALTER TABLE innobase/fil/fil0fil.c: Fix a race condition that could cause the assertion space->n_pending_flushes == 0 to fail in fil0fil.c, in fil_space_free() --- innobase/fil/fil0fil.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'innobase') diff --git a/innobase/fil/fil0fil.c b/innobase/fil/fil0fil.c index ea34b6ffd93..5f71c00aea6 100644 --- a/innobase/fil/fil0fil.c +++ b/innobase/fil/fil0fil.c @@ -4139,7 +4139,8 @@ fil_flush_file_spaces( space = UT_LIST_GET_FIRST(system->space_list); while (space) { - if (space->purpose == purpose) { + if (space->purpose == purpose && !space->is_being_deleted) { + space->n_pending_flushes++; /* prevent dropping of the space while we are flushing */ -- cgit v1.2.1