From 93b58f1ee461166f059d45933a435d3e588988c6 Mon Sep 17 00:00:00 2001
From: Andronik Ordian <write@reusable.software>
Date: Wed, 25 Aug 2021 21:42:07 +0200
Subject: [PATCH] allow some overhead in MERKLE_NODE_MAX_SIZE (#3724)

* allow overhead in MERKLE_NODE_MAX_SIZE

* Update node/primitives/src/lib.rs

Co-authored-by: cheme <emericchevalier.pro@gmail.com>

Co-authored-by: cheme <emericchevalier.pro@gmail.com>
---
 polkadot/node/primitives/src/lib.rs | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/polkadot/node/primitives/src/lib.rs b/polkadot/node/primitives/src/lib.rs
index ae982708c8c..6aabb93d763 100644
--- a/polkadot/node/primitives/src/lib.rs
+++ b/polkadot/node/primitives/src/lib.rs
@@ -52,8 +52,10 @@ pub use disputes::{
 	SignedDisputeStatement, UncheckedDisputeMessage, ValidDisputeVote,
 };
 
-// For a 16-ary Merkle Prefix Trie, we can expect at most 16 32-byte hashes per node.
-const MERKLE_NODE_MAX_SIZE: usize = 512;
+// For a 16-ary Merkle Prefix Trie, we can expect at most 16 32-byte hashes per node
+// plus some overhead:
+// header 1 + bitmap 2 + max partial_key 8 + children 16 * (32 + len 1) + value 32 + value len 1
+const MERKLE_NODE_MAX_SIZE: usize = 512 + 100;
 // 16-ary Merkle Prefix Trie for 32-bit ValidatorIndex has depth at most 8.
 const MERKLE_PROOF_MAX_DEPTH: usize = 8;
 
-- 
GitLab