From 8a973c8c47f25b8b6c14c199b623debd43906c72 Mon Sep 17 00:00:00 2001 From: Vlad Khorsun Date: Wed, 16 Feb 2022 22:46:51 +0200 Subject: [PATCH] This should fix bug #7134 : Firebird 4: Database page errors directly after gbak, which dissappear after some calls of gfix --- src/jrd/jrd.cpp | 1 + src/jrd/validation.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/jrd/jrd.cpp b/src/jrd/jrd.cpp index 4d49eccd7d..511b2f537d 100644 --- a/src/jrd/jrd.cpp +++ b/src/jrd/jrd.cpp @@ -2077,6 +2077,7 @@ JAttachment* JProvider::internalAttach(CheckStatusWrapper* user_status, const ch // Can't allow garbage collection during database validation. + AutoSetRestoreFlag noCleanup(&attachment->att_flags, ATT_no_cleanup, true); VIO_fini(tdbb); if (!VAL_validate(tdbb, options.dpb_verify)) diff --git a/src/jrd/validation.cpp b/src/jrd/validation.cpp index c7a05417c4..b73af301cb 100644 --- a/src/jrd/validation.cpp +++ b/src/jrd/validation.cpp @@ -725,6 +725,7 @@ static int validate(Firebird::UtilSvc* svc) { dpb.insertString(isc_dpb_trusted_auth, userName); } + dpb.insertTag(isc_dpb_no_garbage_collect); PathName expandedFilename; if (expandDatabaseName(dbName, expandedFilename, NULL))