diff --git a/src/jrd/dfw.epp b/src/jrd/dfw.epp index 401fe9d10a0..b7fb38d5630 100644 --- a/src/jrd/dfw.epp +++ b/src/jrd/dfw.epp @@ -4955,6 +4955,7 @@ static bool delete_relation(thread_db* tdbb, SSHORT phase, DeferredWork* work, j case 4: relation = MET_lookup_relation_id(tdbb, work->dfw_id, true); if (!relation) { + fb_assert(false); return false; } diff --git a/src/jrd/met.epp b/src/jrd/met.epp index edbd0170d12..416e19f8df1 100644 --- a/src/jrd/met.epp +++ b/src/jrd/met.epp @@ -4468,7 +4468,7 @@ static int blocking_ast_relation(void* ast_object) if (relation->rel_use_count) relation->rel_flags |= REL_blocking; - else + else if (!(relation->rel_flags & REL_deleting)) { relation->rel_flags &= ~REL_blocking; relation->rel_flags |= REL_check_existence;