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

Fixed #7979: Hang when database with disconnect trigger using MON$ tables is shutting down

(cherry picked from commit 481863e632)
This commit is contained in:
AlexPeshkoff 2024-01-28 12:25:48 +03:00
parent a46b99ff5a
commit a552f1f314

View File

@ -523,8 +523,6 @@ bool CCH_exclusive_attachment(thread_db* tdbb, USHORT level, SSHORT wait_flag, S
{
try
{
tdbb->checkCancelState();
bool found = false;
for (Jrd::Attachment* other_attachment = attachment->att_next; other_attachment;
other_attachment = other_attachment->att_next)
@ -575,6 +573,7 @@ bool CCH_exclusive_attachment(thread_db* tdbb, USHORT level, SSHORT wait_flag, S
if (remaining >= CCH_EXCLUSIVE_RETRY_INTERVAL)
{
SyncUnlockGuard unlock(exLock ? (*exGuard) : dsGuard);
tdbb->reschedule();
Thread::sleep(CCH_EXCLUSIVE_RETRY_INTERVAL * 1000);
}