From b92144aab8dfa8ea0eab1ad92a04ba29c274f377 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20W=C3=B3jtowicz?= Date: Mon, 22 Jun 2026 19:46:07 +0200 Subject: [PATCH] dmq-node: don't set big ledger peer snapshot's slot at maxBound --- .../20260622_194001_crocodile-dentist.md | 23 +++++++++++++++++++ .../DMQ/NodeToClient/LocalStateQueryClient.hs | 10 +++----- 2 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 dmq-node/changelog.d/20260622_194001_crocodile-dentist.md diff --git a/dmq-node/changelog.d/20260622_194001_crocodile-dentist.md b/dmq-node/changelog.d/20260622_194001_crocodile-dentist.md new file mode 100644 index 0000000..cf55b29 --- /dev/null +++ b/dmq-node/changelog.d/20260622_194001_crocodile-dentist.md @@ -0,0 +1,23 @@ + + + +### Non-Breaking + +- Bugfix: don't set block point slot to maxBound for big ledger peers in local state query client + + diff --git a/dmq-node/src/DMQ/NodeToClient/LocalStateQueryClient.hs b/dmq-node/src/DMQ/NodeToClient/LocalStateQueryClient.hs index f2c598d..1ccbba4 100644 --- a/dmq-node/src/DMQ/NodeToClient/LocalStateQueryClient.hs +++ b/dmq-node/src/DMQ/NodeToClient/LocalStateQueryClient.hs @@ -20,7 +20,6 @@ import Control.Monad.Class.MonadTime.SI import Control.Monad.Class.MonadTimer.SI import Control.Monad.Trans.Except import "contra-tracer" Control.Tracer (Tracer, traceWith) -import Data.Functor ((<&>)) import Data.List.NonEmpty qualified as NonEmpty import Data.Void @@ -46,8 +45,7 @@ import Ouroboros.Consensus.Shelley.Ledger.Query import Ouroboros.Consensus.Shelley.Ledger.SupportsProtocol () import Ouroboros.Network.Block import Ouroboros.Network.PeerSelection.LedgerPeers (LedgerPeersKind (..), - RawBlockHash, accumulateBigLedgerStake) -import Ouroboros.Network.Point (Block (..)) + accumulateBigLedgerStake) import Ouroboros.Network.Protocol.LocalStateQuery.Client import Ouroboros.Network.Protocol.LocalStateQuery.Type @@ -259,9 +257,7 @@ cardanoLocalStateQueryClient tracer ledgerPeers relays , not (null relays') ] - pt' :: Point RawBlockHash - pt' = Point $ getPoint pt <&> - \blk -> blk { blockPointSlot = maxBound } + srvRelays = force [ (stake, NonEmpty.fromList relays') | (stake, relays) <- peers @@ -276,7 +272,7 @@ cardanoLocalStateQueryClient tracer ledgerPeers atomically do writeTMVar ledgerPeersVar $ LedgerAllPeerSnapshotV23 pt magic srvRelays - writeTVar ledgerBigPeersVar . Just $! LedgerBigPeerSnapshotV23 pt' magic bigSrvRelays + writeTVar ledgerBigPeersVar . Just $! LedgerBigPeerSnapshotV23 pt magic bigSrvRelays pure $ release systemStart nextEpoch