From 8133e545be42b607cc3321e843757a75d4f71c80 Mon Sep 17 00:00:00 2001 From: darshankabariya Date: Mon, 8 Dec 2025 23:56:38 +0530 Subject: [PATCH] fix: store-query issue in v0.37.0 --- tests/testlib/wakunode.nim | 2 +- tools/confutils/cli_args.nim | 4 ++-- .../factory/conf_builder/waku_conf_builder.nim | 18 +++++++++++------- waku/factory/waku_conf.nim | 11 +++++++++++ 4 files changed, 25 insertions(+), 10 deletions(-) diff --git a/tests/testlib/wakunode.nim b/tests/testlib/wakunode.nim index b732ede64..0ab94265b 100644 --- a/tests/testlib/wakunode.nim +++ b/tests/testlib/wakunode.nim @@ -34,7 +34,7 @@ proc defaultTestWakuConfBuilder*(): WakuConfBuilder = @[parseIpAddress("1.1.1.1"), parseIpAddress("1.0.0.1")] ) builder.withNatStrategy("any") - builder.withMaxConnections(200) + builder.withMaxConnections(300) builder.withRelayServiceRatio("50:50") builder.withMaxMessageSize("1024 KiB") builder.withClusterId(DefaultClusterId) diff --git a/tools/confutils/cli_args.nim b/tools/confutils/cli_args.nim index 856b51ddc..2be92105f 100644 --- a/tools/confutils/cli_args.nim +++ b/tools/confutils/cli_args.nim @@ -207,8 +207,8 @@ type WakuNodeConf* = object maxConnections* {. desc: - "Maximum allowed number of libp2p connections. (Default: 200) can't set it to less than 200", - defaultValue: 200, + "Maximum allowed number of libp2p connections. (Default: 300) can't set it to less than 300", + defaultValue: 300, name: "max-connections" .}: int diff --git a/waku/factory/conf_builder/waku_conf_builder.nim b/waku/factory/conf_builder/waku_conf_builder.nim index a250226f8..5833fcdfd 100644 --- a/waku/factory/conf_builder/waku_conf_builder.nim +++ b/waku/factory/conf_builder/waku_conf_builder.nim @@ -585,12 +585,16 @@ proc build*( warn "Peer persistence not specified, defaulting to false" false - let maxConnections = - if builder.maxConnections.isSome(): - builder.maxConnections.get() - else: - warn "Max Connections was not specified, defaulting to 300" - 300 + var maxConnections: int + if builder.maxConnections.isSome(): + var mc = builder.maxConnections.get() # mutable to enforce minimum + if mc < 300: + warn "max-connections less than 300; using default 300", provided = mc + mc = 300 + maxConnections = mc + else: + warn "Max Connections was not specified, defaulting to 300" + maxConnections = 300 # TODO: Do the git version thing here let agentString = builder.agentString.get("nwaku") @@ -660,7 +664,7 @@ proc build*( agentString: agentString, colocationLimit: colocationLimit, maxRelayPeers: builder.maxRelayPeers, - relayServiceRatio: builder.relayServiceRatio.get("60:40"), + relayServiceRatio: builder.relayServiceRatio.get("50:50"), rateLimit: rateLimit, circuitRelayClient: builder.circuitRelayClient.get(false), staticNodes: builder.staticNodes, diff --git a/waku/factory/waku_conf.nim b/waku/factory/waku_conf.nim index 899008221..404f690e7 100644 --- a/waku/factory/waku_conf.nim +++ b/waku/factory/waku_conf.nim @@ -231,8 +231,19 @@ proc validateNoEmptyStrings(wakuConf: WakuConf): Result[void, string] = return ok() +proc validateMaxConnectionsAndRatio(wakuConf: WakuConf): Result[void, string] = + if wakuConf.maxConnections < 300: + return + err("max-connections must be at least 300, provided " & $wakuConf.maxConnections) + if wakuConf.relayServiceRatio != "50:50": + return err( + "relay-service-ratio must be exactly 50:50, provided " & wakuConf.relayServiceRatio + ) + ok() + proc validate*(wakuConf: WakuConf): Result[void, string] = ?wakuConf.validateNodeKey() ?wakuConf.shardingConf.validateShards(wakuConf.subscribeShards) ?wakuConf.validateNoEmptyStrings() + ?wakuConf.validateMaxConnectionsAndRatio() return ok()