8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 00:03:02 +01:00

Avoid hangup in SS when error happens at system attachment initialization time

This commit is contained in:
hvlad 2016-08-17 15:45:30 +03:00
parent 6e8508730e
commit 97aead186a
2 changed files with 11 additions and 1 deletions

View File

@ -2963,10 +2963,15 @@ static THREAD_ENTRY_DECLARE cache_writer(THREAD_ENTRY_PARAM arg)
iscDbLogStatus(dbb->dbb_filename.c_str(), &status_vector);
}
bcb->bcb_flags &= ~(BCB_cache_writer | BCB_writer_start);
bcb->bcb_flags &= ~BCB_cache_writer;
try
{
if (bcb->bcb_flags & BCB_writer_start)
{
bcb->bcb_flags &= ~BCB_writer_start;
bcb->bcb_writer_init.release();
}
bcb->bcb_writer_fini.release();
}
catch (const Firebird::Exception& ex)

View File

@ -4549,6 +4549,11 @@ static THREAD_ENTRY_DECLARE garbage_collector(THREAD_ENTRY_PARAM arg)
try
{
// Notify the finalization caller that we're finishing.
if (dbb->dbb_flags & DBB_gc_starting)
{
dbb->dbb_flags &= ~DBB_gc_starting;
dbb->dbb_gc_init.release();
}
dbb->dbb_gc_fini.release();
}
catch (const Firebird::Exception& ex)