From 05a52e26685f7dd94fd7ec852cb08589aed8b8d5 Mon Sep 17 00:00:00 2001 From: Pavel Zbitskiy <65323360+algorandskiy@users.noreply.github.com> Date: Wed, 31 Jul 2024 14:29:19 -0400 Subject: [PATCH] tests: fix flushing in TestVotersReloadFromDiskAfterOneStateProofCommitted (#6090) --- ledger/ledger_test.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ledger/ledger_test.go b/ledger/ledger_test.go index f1ee8898c9..c4bb74fcb5 100644 --- a/ledger/ledger_test.go +++ b/ledger/ledger_test.go @@ -2952,6 +2952,19 @@ func testVotersReloadFromDiskAfterOneStateProofCommitted(t *testing.T, cfg confi <-l.trackers.commitSyncerClosed l.trackers.commitSyncerClosed = nil + // it is possible a commmit was scheduled while commitSyncer was closing so that there is one pending task + // that required to be done before before the ledger can be closed, so drain the queue +outer: + for { + select { + case <-l.trackers.deferredCommits: + log.Info("drained deferred commit") + l.trackers.accountsWriting.Done() + default: + break outer + } + } + // flush one final time triggerTrackerFlush(t, l)