Skip to content

Commit a00d2f3

Browse files
committed
Move tracer out of the modifyMVar block
1 parent d4959e7 commit a00d2f3

File tree

1 file changed

+11
-7
lines changed
  • ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Storage/ImmutableDB/Impl/Index

1 file changed

+11
-7
lines changed

ouroboros-consensus/src/ouroboros-consensus/Ouroboros/Consensus/Storage/ImmutableDB/Impl/Index/Cache.hs

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -574,23 +574,27 @@ getChunkInfo ::
574574
getChunkInfo cacheEnv chunk = do
575575
lastUsed <- LastUsed <$> getMonotonicTime
576576
-- Make sure we don't leave an empty MVar in case of an exception.
577-
mbCacheHit <- modifyMVar cacheVar $
577+
(mbCacheHit, tr) <- modifyMVar cacheVar $
578578
\cached@Cached { currentChunk, currentChunkInfo, nbPastChunks } -> if
579579
| chunk == currentChunk -> do
580580
-- Cache hit for the current chunk
581-
traceWith tracer $ TraceCurrentChunkHit chunk nbPastChunks
582-
return (cached, Just $ Left currentChunkInfo)
581+
return ( cached
582+
, (Just $ Left currentChunkInfo, TraceCurrentChunkHit chunk nbPastChunks)
583+
)
583584
| Just (pastChunkInfo, cached') <- lookupPastChunkInfo chunk lastUsed cached -> do
584585
-- Cache hit for an chunk in the past
585-
traceWith tracer $ TracePastChunkHit chunk nbPastChunks
586-
return (cached', Just $ Right pastChunkInfo)
586+
return ( cached'
587+
, (Just $ Right pastChunkInfo, TracePastChunkHit chunk nbPastChunks)
588+
)
587589
| otherwise -> do
588590
-- Cache miss for an chunk in the past. We don't want to hold on to
589591
-- the 'cacheVar' MVar, blocking all other access to the cace, while
590592
-- we're reading things from disk, so put it back now and update the
591593
-- cache afterwards.
592-
traceWith tracer $ TracePastChunkMiss chunk nbPastChunks
593-
return (cached, Nothing)
594+
return ( cached
595+
, (Nothing, TracePastChunkMiss chunk nbPastChunks)
596+
)
597+
traceWith tracer tr
594598
case mbCacheHit of
595599
Just hit -> return hit
596600
Nothing -> do

0 commit comments

Comments
 (0)