Commit Graph

14239 Commits

Author SHA1 Message Date
Nicholas Dudfield
645f16e7fe feat(overlay): virtual peer timer, inline strands, precise clock
PeerImp arms TimeoutCounterTimer when makePeerTimer is installed.
inlineStrands builds the existing strand type over an inline executor.
Tracking, ping RTT and uptime use getPreciseStopwatch.
2026-09-18 11:47:01 +07:00
Nicholas Dudfield
4bea07f662 feat(shamap): inject Family PRNG into missing-node walks
NodeFamily forwards Application::getPrng. SHAMapSync draws first-child
offsets from that engine. TestNodeFamily keeps default_prng.
2026-09-18 11:44:49 +07:00
Nicholas Dudfield
8e2907f231 fix(overlay): score peers in id order with injected PRNG
getScore draws from Application::getPrng. addPeers, getPeerWithTree and
getPeerWithLedger collect and sort by peer id before scoring so draws
do not follow unordered overlay traversal.
2026-09-18 11:41:49 +07:00
Nicholas Dudfield
605eefd921 feat(app): route remaining stopwatch and PRNG consumers through Application
LedgerHistory, TransactionMaster, NodeFamily caches, PeerFinder and
reduce-relay idle checks use getStopwatch. Fetch-pack deadlines use the
same clock. Overlay tx relay, ping sequence and InboundLedger peer
sampling use getPrng; fetch-pack scoring and acquire sampling sort by
peer id first.
2026-09-18 11:35:53 +07:00
Nicholas Dudfield
656c86ac8e feat(app): consume injected clocks and forward consensus clock
Caches, HashRouter, Validations, LedgerMaster and InboundLedgers use
the injected stopwatch. NetworkOPs passes that clock into RCLConsensus
instead of the process-global clock. manualHeartbeat suppresses the
asio heartbeat; heartbeatTick posts the same job.
2026-09-18 11:28:59 +07:00
Nicholas Dudfield
3a540f724f fix(app): forward-declare Application before OverlayFactory
The alias uses Application&; declare the class first so the header does
not depend on a transitive declaration.
2026-09-18 11:27:33 +07:00
Nicholas Dudfield
2ecb940776 feat(jobqueue): expose lastJob completedJobs and suspendedCount
Donor MultiNode::threadedTick needs these counters even for baseline
stepping imports.
2026-09-18 11:21:38 +07:00
Nicholas Dudfield
cfe0daf862 feat(app): inject overlay factory and acquire timers
make_Application grows defaulted overlay/clock/prng/timer parameters.
Production still uses make_Overlay and asio TimeoutCounter timers.
steppingMode refuses empty timer factories.
2026-09-18 11:21:34 +07:00
Nicholas Dudfield
380b60f155 feat(jobqueue): claim jobs before the no-threads assert
DispatchHook is empty in production. claimedQueued/claimedDropped skip
the worker pool so a stepping harness can run with zero JobQueue threads.
2026-09-18 11:16:16 +07:00
Nicholas Dudfield
b060e43a9a feat(config): add stepping and harness control flags
Production defaults keep current behavior. steppingMode zeros io and
JobQueue workers; signals and the deadlock detector become optional.
2026-09-18 11:15:33 +07:00
Nicholas Dudfield
526ac3475c fix(app): keep first-ledger publication state per application 2026-09-18 10:55:19 +07:00
Nicholas Dudfield
84502af0d2 fix(txq): keep parent-hash ordering keys per candidate 2026-09-18 10:55:15 +07:00
Nicholas Dudfield
06a7d2c6ae fix(overlay): isolate relay duplicate tracking per Slots instance 2026-09-18 10:55:11 +07:00
Nicholas Dudfield
14c93a5215 fix(consensus): isolate validation keep-range refresh deadlines 2026-09-18 10:55:07 +07:00
Nicholas Dudfield
d1b1367e43 test(rdb): use concrete ledgers in concurrent save regression 2026-09-18 10:35:30 +07:00
Nicholas Dudfield
91847f6bb0 fix(consensus): serialize consensus phase publication 2026-09-18 10:19:25 +07:00
Nicholas Dudfield
4b9f2ed886 fix(tx): synchronize mutable transaction response state 2026-09-18 10:18:30 +07:00
Nicholas Dudfield
9b8a1edd53 fix(ledger): synchronize acquire state access and received-data admission 2026-09-18 10:15:47 +07:00
Nicholas Dudfield
bd3b9ac775 fix(ledger): lock acquire completion state before reporting it 2026-09-18 10:15:42 +07:00
Nicholas Dudfield
c8852857d2 fix(ledger): synchronize ledger-age log throttles 2026-09-18 10:15:38 +07:00
Nicholas Dudfield
7015a23a57 fix(rdb): keep ledger-save SQL formatters local to each call 2026-09-18 10:12:59 +07:00
Nicholas Dudfield
adf33d5e63 fix(test): isolate concurrent suite log buffers 2026-09-18 10:02:59 +07:00
tequ
c208a40ce8 remove WASM: $COUNTER from SetHook_wasm.h (#804) 2026-09-09 15:31:11 +10:00
tequ
401a35957d retire fixXahauV1, fixXahauV2 Amendments (#722) 2026-09-09 13:00:24 +10:00
Niq Dudfield
65ff61d518 fix: fail fast when amendment blocked instead of degraded state (#707) 2026-09-08 13:39:45 +10:00
Richard Holland
6191c1e09d Onchain manifests (#779) 2026-09-07 13:19:25 +10:00
tequ
f1a3a775a1 Add optional Hooks data to account_info response (#789) 2026-09-02 17:22:53 +10:00
tequ
c1dabe5576 Fix comments (#768) 2026-09-01 14:18:28 +10:00
Niq Dudfield
c6d5b345eb fix: subscription webhook delivery stalling on HTTP errors (#677) 2026-08-27 12:13:21 +10:00
Richard Holland
bb244ef772 put release builds into a candidate folder to prevent auto-update scripts running before smoke tests (#761) 2026.6.21-release+3350 2026-06-21 12:12:43 +10:00
Richard Holland
639ea34377 Fixhookmap (#756) 2026-06-16 17:06:25 +10:00
tequ
089c0dc3fe Fix ammLPHolds logic to include escrowed cases (#757) 2026-06-16 15:26:29 +10:00
tequ
78167e09c0 change sfHookOn of ltHookDefinition to soeOptional for HookOnV2 (#755) 2026-06-16 13:58:53 +10:00
tequ
607a7fdf98 Change AMM to Supported::no (#758) 2026-06-16 13:56:58 +10:00
tequ
c55420bcd8 Fix duplicate and incorrect fields in server_definitions (#753) 2026-05-27 07:58:13 +10:00
tequ
cb91b4e88e Restore pre-reserved tem codes (#754) 2026-05-27 07:57:55 +10:00
tequ
90333b6fd0 Fix HookAPI Expected and Refactor Enum classes (#729) 2026-05-26 11:02:17 +10:00
tequ
7f9a9364b0 fix: Ensures canonical order for PriceDataSeries upon PriceOracle creation (#5485) (#744) 2026-05-25 11:34:24 +10:00
tequ
706d31f01d Update .git-blame-ignore-revs (#746) 2026-05-25 11:28:56 +10:00
tequ
083e9e4315 Generate hook extern declarations with C linkage (#750) 2026-05-25 11:27:21 +10:00
tequ
b9e0c56def Guard depth 32 (#653) 2026-05-25 11:10:49 +10:00
tequ
663ed4edb8 Named Hook (#718) 2026-05-19 12:00:25 +10:00
tequ
8422758d4d chore: Improve codecov coverage reporting (#4977) (#745) 2026-05-18 12:21:47 +10:00
tequ
586c78e812 fix: Replace badCurrency() checks with isBadCurrency() for improved clarity (#742) 2026-05-18 11:57:25 +10:00
Niq Dudfield
9b50b68d39 perf(ledger): optimize catalogue loading memory usage and performance (#548) 2026-05-06 17:29:44 +10:00
tequ
5e8d26f67a refactor: Calculate numFeatures automatically (#5324) (#739)
Co-authored-by: Ed Hennis <ed@ripple.com>
2026-04-30 18:17:50 +10:00
tequ
a6186d7855 IOURewardClaim (#500) 2026-04-30 15:27:51 +10:00
tequ
b449599408 Add --definitions CLI flag to output static server definitions without starting server (#708) 2026-04-30 12:42:42 +10:00
tequ
9d4e507675 Treat suspicious gcov hit counts as coverage warnings (#737) 2026-04-29 17:06:44 +10:00
tequ
49fd0c33b5 fixIOULockedBalanceInvariant Amendment (#732) 2026-04-29 17:05:18 +10:00