Commit Graph

1584 Commits

Author SHA1 Message Date
Luke Dashjr
84eff5944d Merge 9749 via unique_spk_mempool-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
9d18c6ea47 Merge bytespersigopstrict-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
5ba611afd0 Merge 30232 via refactor_isstandardtx_mpopts-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
7b898f1d01 Merge truc_opts-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
a1e42756c1 Merge 7219 via rbf_opts-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
07464b1321 Merge mining_priority 2025-03-05 03:27:08 +00:00
Luke Dashjr
9d121259d7 Merge 7533 via sendraw_force-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
637b1c54da Merge 15861 via restore_vbits_warning 2025-03-05 03:27:08 +00:00
Luke Dashjr
4463660524 Merge 12965 via scriptthreads-28+knots 2025-03-05 03:27:08 +00:00
Luke Dashjr
8646f7adcf Merge 8501 via old_stats_rpc-28 2025-03-05 03:27:08 +00:00
Luke Dashjr
990ff83c56 Merge ionice_win 2025-03-05 03:27:08 +00:00
Luke Dashjr
67d111426a Match Windows I/O priority to other platforms: loading external block files and reading blocks raw 2025-03-05 17:28:03 +00:00
Luke Dashjr
45fa891549 Merge branch 'ionice' into ionice_win 2025-03-05 17:21:08 +00:00
Luke Dashjr
20f5b5a056 Merge 9245 via ionice 2025-03-05 03:27:08 +00:00
Luke Dashjr
8de796420d Merge 31534 via log_big_utxo_flush-26 2025-03-05 03:27:08 +00:00
Luke Dashjr
97b67babbe Merge 21780 via rpc_maxmempool 2025-03-05 03:27:08 +00:00
Luke Dashjr
2fc6668792 Merge 19873 via mempressure 2025-03-05 03:27:08 +00:00
Luke Dashjr
d8114ff110 Merge 19463 via prune_locks 2025-03-05 03:27:08 +00:00
Luke Dashjr
ef80edf7c0 Merge 31097 via scripterr_prefer_consensus-28 2025-03-05 03:27:08 +00:00
Luke Dashjr
878cbd9c54 Merge 31064 via init_coins_cache_pr31064-25 2025-03-05 03:27:08 +00:00
Luke Dashjr
046057b0df Merge 30909 via fix_GVP_assumeutxo_pr30909-28 2025-03-05 03:27:08 +00:00
Luke Dashjr
406243e7c9 Support overriding txn-spk-reused rejections via sendrawtransaction 2025-02-21 23:46:35 +00:00
Luke Dashjr
a7112699a0 Treat SPK conflicts the same as RBF-optin TxIn conflicts (except never DoS ban) 2025-02-21 23:46:35 +00:00
Luke Dashjr
873972f1ee txmempool: Store pointers to transactions claiming SPKs 2025-02-21 23:46:35 +00:00
Luke Dashjr
80627c9af8 If -spkreuse=0, ensure transactions in mempool always have unique scriptPubKeys
Exceptions:
- Multiple inputs in the same transaction are allowed to spend against the same scriptPubKey
- The same scriptPubKey may be used in the mempool as both first an output, and then spent in a later transaction's input
2025-02-21 23:46:35 +00:00
Luke Dashjr
cbecc46733 Restore original bytespersigop as bytespersigopstrict
Plus a bugfix to accurately count sigops for this purpose
2025-02-21 23:45:58 +00:00
Luke Dashjr
b63bf026ee Merge branch 'permitbarepubkey-28+knots' into bytespersigopstrict-28+knots 2025-02-21 23:45:54 +00:00
Luke Dashjr
ac776591f7 Merge branch 'rpc_maxmempool' into bytespersigopstrict-28+knots 2025-02-21 23:45:51 +00:00
Luke Dashjr
8a59be43ed Merge branch 'truc_opts-28+knots' into permitbarepubkey-28+knots 2025-02-21 23:45:16 +00:00
Luke Dashjr
3dbae62c64 Add mempooltruc=reject/accept/enforce option to enable TRUC support 2025-02-21 23:44:25 +00:00
Luke Dashjr
9b6167f697 Rework mempoolreplacement option handling 2025-02-21 23:43:46 +00:00
Luke Dashjr
8247f0741d Restore -mempoolreplacement option to allow disabling opt-in RBF
This partially reverts commit 8053e5cdad.
2025-02-21 23:43:46 +00:00
Luke Dashjr
f06d7bc13d Merge branch 'sendraw_force-28+knots' into rbf_opts-28+knots 2025-02-21 23:43:27 +00:00
Luke Dashjr
bf19342e51 Optimise coin-age priority by splitting up steps to calculate it
double priority = GetPriority(tx, view, height, ICIV);
becomes
    const double coin_age = GetCoinAge(tx, view, height, ICIV);
    const auto mod_vsize = CalculateModifiedSize(tx);
    const double priority = ComputePriority2(coin_age, mod_vsize);
2025-02-21 23:41:44 +00:00
Luke Dashjr
618063821e Enable prioritisetransaction with priority delta 2025-02-21 23:41:44 +00:00
Luke Dashjr
678978f6f6 Policy: Restore support for mining based on coin-age priority
This reverts commit 7036cf52aa (and much more).
2025-02-21 23:41:44 +00:00
Luke Dashjr
ba86144e77 Merge branch 'sendraw_force-28+knots' into mining_priority 2025-02-21 17:13:06 +00:00
Luke Dashjr
734576e3e3 refactor: policy: Pass kernel::MemPoolOptions to IsStandard[Tx] rather than long list of individual options
Github-Pull: #30232
Rebased-From: d4c3c2e9ae2536c345cc8f20c2de3a466eef7ced
2025-02-21 17:04:43 +00:00
Luke Dashjr
cf0c04f0cf Merge branch 'mempressure' into rbf_opts-28+knots 2025-02-21 16:43:15 +00:00
Luke Dashjr
8e36e6951d Bugfix: Ignore "min relay fee not met" using the correct ignore_rejects string 2025-02-21 16:41:12 +00:00
Luke Dashjr
a25c4629a8 Support manually overriding TRUC policy checks 2025-01-23 03:01:51 +00:00
Luke Dashjr
cf65351293 Give separate reject reasons to each TRUC check 2025-01-23 03:01:51 +00:00
Luke Dashjr
416646d1ca Support ignoring package-fee-too-low rejection 2025-01-23 03:01:51 +00:00
Luke Dashjr
ce3e33cde2 Implement ignore_rejects for transaction packages 2025-01-23 03:01:51 +00:00
Luke Dashjr
cd1b140d5b node: Extend BroadcastTransaction to accept ignore_rejects 2025-01-23 03:01:51 +00:00
Luke Dashjr
9a7339f672 Make bad-witness-nonstandard rejection more specific, and support overriding some 2025-01-23 03:01:51 +00:00
Luke Dashjr
d926fd0325 Ability to ignore AreInputsStandard rejection reasons 2025-01-23 03:01:50 +00:00
Luke Dashjr
b716189d95 Ability to ignore IsStandardTx rejection reasons 2025-01-23 03:01:50 +00:00
Luke Dashjr
9ebc373637 AcceptToMemoryPool: Support overriding many top-level rejections 2025-01-23 03:01:50 +00:00
Luke Dashjr
8a18e6513c AcceptToMemoryPool: Minimally change bool bypass_limits to unordered_set<string> ignore_rejects 2025-01-23 03:01:50 +00:00