From 3509e55ae592035477f71335025e5dc42d255171 Mon Sep 17 00:00:00 2001 From: Konstantin Akimov Date: Mon, 28 Jul 2025 02:25:58 +0700 Subject: [PATCH 1/4] feat: a bit of extra logs when no DB_VVEC in database --- src/llmq/dkgsessionmgr.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/llmq/dkgsessionmgr.cpp b/src/llmq/dkgsessionmgr.cpp index 6386d9487ab46..a06be22f863e8 100644 --- a/src/llmq/dkgsessionmgr.cpp +++ b/src/llmq/dkgsessionmgr.cpp @@ -317,6 +317,9 @@ bool CDKGSessionManager::GetVerifiedContributions(Consensus::LLMQType llmqType, if (it == contributionsCache.end()) { CDataStream s(SER_DISK, CLIENT_VERSION); if (!db->ReadDataStream(std::make_tuple(DB_VVEC, llmqType, pQuorumBaseBlockIndex->GetBlockHash(), proTxHash), s)) { + LogPrint(BCLog::LLMQ, "%s -- this node does not have vvec for llmq=%d block=%s protx=%s\n", + __func__, ToUnderlying(llmqType), pQuorumBaseBlockIndex->GetBlockHash().ToString(), + proTxHash.ToString()); return false; } size_t vvec_size = ReadCompactSize(s); From 848433c2457032a24254ea6bd534aea8877b5d27 Mon Sep 17 00:00:00 2001 From: Konstantin Akimov Date: Mon, 28 Jul 2025 04:17:00 +0700 Subject: [PATCH 2/4] fix: intermittent error in functional tests while waiting final quorum commitment It fix intermittent error in feature_asset_locks.py and other functional tests that uses quorums --- test/functional/test_framework/test_framework.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/functional/test_framework/test_framework.py b/test/functional/test_framework/test_framework.py index 8b325b480bd45..6587c5071e9f9 100755 --- a/test/functional/test_framework/test_framework.py +++ b/test/functional/test_framework/test_framework.py @@ -2072,6 +2072,8 @@ def check_dkg_comitments(): continue if c["quorumHash"] != quorum_hash: continue + if c["quorumPublicKey"] == '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000': + continue c_ok = True break if not c_ok: From ab9fc705a7100a2cf80c980636f418a7a8eda5ae Mon Sep 17 00:00:00 2001 From: Konstantin Akimov Date: Mon, 28 Jul 2025 20:12:52 +0700 Subject: [PATCH 3/4] test: apply default 0.05 delay for wait_for_quorum_commitment --- test/functional/test_framework/test_framework.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/functional/test_framework/test_framework.py b/test/functional/test_framework/test_framework.py index 6587c5071e9f9..457cf9d4ffa39 100755 --- a/test/functional/test_framework/test_framework.py +++ b/test/functional/test_framework/test_framework.py @@ -2080,7 +2080,7 @@ def check_dkg_comitments(): return False return True - self.wait_until(check_dkg_comitments, timeout=timeout, sleep=1) + self.wait_until(check_dkg_comitments, timeout=timeout) def wait_for_quorum_list(self, quorum_hash, nodes, timeout=15, llmq_type_name="llmq_test"): def wait_func(): From 928cf34d9f8992df8fa64e702547a8262707b6ee Mon Sep 17 00:00:00 2001 From: Konstantin Akimov Date: Tue, 29 Jul 2025 22:16:08 +0700 Subject: [PATCH 4/4] test: use '0'x96 instead 00000..0 Co-authored-by: UdjinM6 --- test/functional/test_framework/test_framework.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/functional/test_framework/test_framework.py b/test/functional/test_framework/test_framework.py index 457cf9d4ffa39..a5227c26ddc8a 100755 --- a/test/functional/test_framework/test_framework.py +++ b/test/functional/test_framework/test_framework.py @@ -2072,7 +2072,7 @@ def check_dkg_comitments(): continue if c["quorumHash"] != quorum_hash: continue - if c["quorumPublicKey"] == '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000': + if c["quorumPublicKey"] == '0' * 96: continue c_ok = True break