Skip to content

Commit 9a29d47

Browse files
committed
[rpc] return full string for package_msg and package-error
1 parent 158623b commit 9a29d47

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

src/rpc/mempool.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ static RPCHelpMan testmempoolaccept()
199199
result_inner.pushKV("txid", tx->GetHash().GetHex());
200200
result_inner.pushKV("wtxid", tx->GetWitnessHash().GetHex());
201201
if (package_result.m_state.GetResult() == PackageValidationResult::PCKG_POLICY) {
202-
result_inner.pushKV("package-error", package_result.m_state.GetRejectReason());
202+
result_inner.pushKV("package-error", package_result.m_state.ToString());
203203
}
204204
auto it = package_result.m_tx_results.find(tx->GetWitnessHash());
205205
if (exit_early || it == package_result.m_tx_results.end()) {
@@ -909,7 +909,7 @@ static RPCHelpMan submitpackage()
909909
case PackageValidationResult::PCKG_TX:
910910
{
911911
// Package-wide error we want to return, but we also want to return individual responses
912-
package_msg = package_result.m_state.GetRejectReason();
912+
package_msg = package_result.m_state.ToString();
913913
CHECK_NONFATAL(package_result.m_tx_results.size() == txns.size() ||
914914
package_result.m_tx_results.empty());
915915
break;

test/functional/mempool_package_limits.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def func_wrapper(self, *args, **kwargs):
2929
testres_error_expected = node.testmempoolaccept(rawtxs=package_hex)
3030
assert_equal(len(testres_error_expected), len(package_hex))
3131
for txres in testres_error_expected:
32-
assert_equal(txres["package-error"], "package-mempool-limits")
32+
assert "package-mempool-limits" in txres["package-error"]
3333

3434
# Clear mempool and check that the package passes now
3535
self.generate(node, 1)

test/functional/mempool_sigoplimit.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,8 @@ def create_bare_multisig_tx(utxo_to_spend=None):
165165
# But together, it's exceeding limits in the *package* context. If sigops adjusted vsize wasn't being checked
166166
# here, it would get further in validation and give too-long-mempool-chain error instead.
167167
packet_test = self.nodes[0].testmempoolaccept([tx_parent.serialize().hex(), tx_child.serialize().hex()])
168-
assert_equal([x["package-error"] for x in packet_test], ["package-mempool-limits", "package-mempool-limits"])
168+
expected_package_error = f"package-mempool-limits, package size {2*20*5000} exceeds ancestor size limit [limit: 101000]"
169+
assert_equal([x["package-error"] for x in packet_test], [expected_package_error] * 2)
169170

170171
# When we actually try to submit, the parent makes it into the mempool, but the child would exceed ancestor vsize limits
171172
res = self.nodes[0].submitpackage([tx_parent.serialize().hex(), tx_child.serialize().hex()])

0 commit comments

Comments
 (0)