From d64b744540282eb578dc3f9616a8beeb79e32519 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Wed, 22 Jul 2026 13:43:12 +0100 Subject: [PATCH] docs(telemetry): InboundLedger acquireSpan_ is thread-free, not detached Co-Authored-By: Claude Opus 4.8 (1M context) --- src/xrpld/app/ledger/InboundLedger.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/xrpld/app/ledger/InboundLedger.h b/src/xrpld/app/ledger/InboundLedger.h index f5009d4b21..b7c61f9bf0 100644 --- a/src/xrpld/app/ledger/InboundLedger.h +++ b/src/xrpld/app/ledger/InboundLedger.h @@ -201,10 +201,9 @@ private: * with the outcome (complete/failed), timeout count, and peer count. * Gives operators visibility into back-fill / fork-recovery cost, which * previously emitted no span or metric. - * Stored detached: emplaced by the acquiring thread, reset on a - * JtLedgerData worker. detached() strips the thread-local Scope so the - * guard can be destroyed on the worker without corrupting the origin - * thread's context stack. + * Thread-free: emplaced by the acquiring thread, reset on a JtLedgerData + * worker. A SpanGuard owns no thread-local Scope, so it can be destroyed + * on the worker without corrupting the origin thread's context stack. */ std::optional acquireSpan_; };