mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 14:38:29 +01:00
Merge bitcoin/bitcoin#28721: multiprocess compatibility updates
3b70f7b615doc: fix broken doc/design/multiprocess.md links after #24352 (Ryan Ofsky)6d43aad742span: Make Span template deduction guides work in SFINAE context (Ryan Ofsky)8062c3bdb9util: Add ArgsManager SetConfigFilePath method (Ryan Ofsky)441d00c60finterfaces: Rename CalculateBumpFees methods to be compatible with capn'proto (Ryan Ofsky)156f49d682interfaces: Change getUnspentOutput return type to avoid multiprocess segfault (Ryan Ofsky)4978754c00interfaces: Add schedulerMockForward method so mockscheduler RPC can work across processes (Ryan Ofsky)924327eaf3interfaces: Fix const virtual method that breaks multiprocess support (Ryan Ofsky)82a379eca8streams: Add SpanReader ignore method (Russell Yanofsky) Pull request description: This is a collection of small changes to interfaces and code which were needed as part of multiprocess PR #10102, but have been moved here to make that PR smaller. All of these changes are refactoring changes which do not affect behavior of current code --- This PR is part of the [process separation project](https://github.com/bitcoin/bitcoin/issues/28722). ACKs for top commit: achow101: ACK3b70f7b615naumenkogs: ACK3b70f7b615maflcko: re-ACK3b70f7b615🎆 Tree-SHA512: 2368772b887056ad8a9f84c299cfde76ba45943770e3b5353130580900afa9611302195b899ced7b6e303b11f053ff204cae7c28ff4e12c55562fcc81119ba4c
This commit is contained in:
@@ -328,10 +328,12 @@ public:
|
||||
std::vector<std::string> listRpcCommands() override { return ::tableRPC.listCommands(); }
|
||||
void rpcSetTimerInterfaceIfUnset(RPCTimerInterface* iface) override { RPCSetTimerInterfaceIfUnset(iface); }
|
||||
void rpcUnsetTimerInterface(RPCTimerInterface* iface) override { RPCUnsetTimerInterface(iface); }
|
||||
bool getUnspentOutput(const COutPoint& output, Coin& coin) override
|
||||
std::optional<Coin> getUnspentOutput(const COutPoint& output) override
|
||||
{
|
||||
LOCK(::cs_main);
|
||||
return chainman().ActiveChainstate().CoinsTip().GetCoin(output, coin);
|
||||
Coin coin;
|
||||
if (chainman().ActiveChainstate().CoinsTip().GetCoin(output, coin)) return coin;
|
||||
return {};
|
||||
}
|
||||
TransactionError broadcastTransaction(CTransactionRef tx, CAmount max_tx_fee, std::string& err_string) override
|
||||
{
|
||||
@@ -670,7 +672,7 @@ public:
|
||||
m_node.mempool->GetTransactionAncestry(txid, ancestors, descendants, ancestorsize, ancestorfees);
|
||||
}
|
||||
|
||||
std::map<COutPoint, CAmount> CalculateIndividualBumpFees(const std::vector<COutPoint>& outpoints, const CFeeRate& target_feerate) override
|
||||
std::map<COutPoint, CAmount> calculateIndividualBumpFees(const std::vector<COutPoint>& outpoints, const CFeeRate& target_feerate) override
|
||||
{
|
||||
if (!m_node.mempool) {
|
||||
std::map<COutPoint, CAmount> bump_fees;
|
||||
@@ -682,7 +684,7 @@ public:
|
||||
return MiniMiner(*m_node.mempool, outpoints).CalculateBumpFees(target_feerate);
|
||||
}
|
||||
|
||||
std::optional<CAmount> CalculateCombinedBumpFee(const std::vector<COutPoint>& outpoints, const CFeeRate& target_feerate) override
|
||||
std::optional<CAmount> calculateCombinedBumpFee(const std::vector<COutPoint>& outpoints, const CFeeRate& target_feerate) override
|
||||
{
|
||||
if (!m_node.mempool) {
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user