Skip to content

Commit 8d73cec

Browse files
kwvgPastaPastaPasta
authored andcommitted
refactor: reduce globals use in RPC and bench, use LLMQContext members
1 parent e8270ca commit 8d73cec

File tree

2 files changed

+9
-6
lines changed

2 files changed

+9
-6
lines changed

src/bench/rpc_blockchain.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
#include <consensus/validation.h>
99
#include <llmq/chainlocks.h>
10+
#include <llmq/context.h>
1011
#include <llmq/instantsend.h>
1112
#include <rpc/blockchain.h>
1213
#include <streams.h>
@@ -42,8 +43,9 @@ struct TestBlockAndIndex {
4243
static void BlockToJsonVerbose(benchmark::Bench& bench)
4344
{
4445
TestBlockAndIndex data;
46+
const LLMQContext& llmq_ctx = *data.test_setup.m_node.llmq_ctx;
4547
bench.run([&] {
46-
auto univalue = blockToJSON(data.block, &data.blockindex, &data.blockindex, *llmq::chainLocksHandler, *llmq::quorumInstantSendManager, /*verbose*/ true);
48+
auto univalue = blockToJSON(data.block, &data.blockindex, &data.blockindex, *llmq_ctx.clhandler, *llmq_ctx.isman, /*verbose*/ true);
4749
ankerl::nanobench::doNotOptimizeAway(univalue);
4850
});
4951
}
@@ -53,7 +55,8 @@ BENCHMARK(BlockToJsonVerbose);
5355
static void BlockToJsonVerboseWrite(benchmark::Bench& bench)
5456
{
5557
TestBlockAndIndex data;
56-
auto univalue = blockToJSON(data.block, &data.blockindex, &data.blockindex, *llmq::chainLocksHandler, *llmq::quorumInstantSendManager, /*verbose*/ true);
58+
const LLMQContext& llmq_ctx = *data.test_setup.m_node.llmq_ctx;
59+
auto univalue = blockToJSON(data.block, &data.blockindex, &data.blockindex, *llmq_ctx.clhandler, *llmq_ctx.isman, /*verbose*/ true);
5760
bench.run([&] {
5861
auto str = univalue.write();
5962
ankerl::nanobench::doNotOptimizeAway(str);

src/rpc/quorums.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ static void quorum_info_help(const JSONRPCRequest& request)
188188
}.Check(request);
189189
}
190190

191-
static UniValue BuildQuorumInfo(const llmq::CQuorumCPtr& quorum, bool includeMembers, bool includeSkShare)
191+
static UniValue BuildQuorumInfo(const llmq::CQuorumBlockProcessor& quorum_block_processor, const llmq::CQuorumCPtr& quorum, bool includeMembers, bool includeSkShare)
192192
{
193193
UniValue ret(UniValue::VOBJ);
194194

@@ -199,7 +199,7 @@ static UniValue BuildQuorumInfo(const llmq::CQuorumCPtr& quorum, bool includeMem
199199
ret.pushKV("minedBlock", quorum->minedBlockHash.ToString());
200200

201201
if (quorum->params.useRotation) {
202-
auto previousActiveCommitment = llmq::quorumBlockProcessor->GetLastMinedCommitmentsByQuorumIndexUntilBlock(quorum->params.type, quorum->m_quorum_base_block_index, quorum->qc->quorumIndex, 0);
202+
auto previousActiveCommitment = quorum_block_processor.GetLastMinedCommitmentsByQuorumIndexUntilBlock(quorum->params.type, quorum->m_quorum_base_block_index, quorum->qc->quorumIndex, 0);
203203
if (previousActiveCommitment.has_value()) {
204204
int previousConsecutiveDKGFailures = (quorum->m_quorum_base_block_index->nHeight - previousActiveCommitment.value()->nHeight) / quorum->params.dkgInterval - 1;
205205
ret.pushKV("previousConsecutiveDKGFailures", previousConsecutiveDKGFailures);
@@ -257,7 +257,7 @@ static UniValue quorum_info(const JSONRPCRequest& request, const LLMQContext& ll
257257
throw JSONRPCError(RPC_INVALID_PARAMETER, "quorum not found");
258258
}
259259

260-
return BuildQuorumInfo(quorum, true, includeSkShare);
260+
return BuildQuorumInfo(*llmq_ctx.quorum_block_processor, quorum, true, includeSkShare);
261261
}
262262

263263
static void quorum_dkgstatus_help(const JSONRPCRequest& request)
@@ -412,7 +412,7 @@ static UniValue quorum_memberof(const JSONRPCRequest& request, const ChainstateM
412412
auto quorums = llmq_ctx.qman->ScanQuorums(llmq_params_opt->type, count);
413413
for (auto& quorum : quorums) {
414414
if (quorum->IsMember(dmn->proTxHash)) {
415-
auto json = BuildQuorumInfo(quorum, false, false);
415+
auto json = BuildQuorumInfo(*llmq_ctx.quorum_block_processor, quorum, false, false);
416416
json.pushKV("isValidMember", quorum->IsValidMember(dmn->proTxHash));
417417
json.pushKV("memberIndex", quorum->GetMemberIndex(dmn->proTxHash));
418418
result.push_back(json);

0 commit comments

Comments
 (0)