Skip to content

Commit dc70763

Browse files
committed
trace-forward: remove wasUsed flag
1 parent d672a04 commit dc70763

File tree

2 files changed

+7
-16
lines changed

2 files changed

+7
-16
lines changed

trace-forward/src/Trace/Forward/Utils/ForwardSink.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,5 @@ data ForwardSink lo = ForwardSink
1212
{ forwardQueue :: !(TVar (TBQueue lo))
1313
, disconnectedSize :: !Word
1414
, connectedSize :: !Word
15-
, wasUsed :: !(TVar Bool)
1615
, overflowCallback :: !([lo] -> IO ())
1716
}

trace-forward/src/Trace/Forward/Utils/TraceObject.hs

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import Control.Concurrent.STM.TBQueue
2626
, flushTBQueue
2727
)
2828
import Control.Concurrent.STM.TVar
29-
import Control.Monad (replicateM, unless)
29+
import Control.Monad (replicateM)
3030
import qualified Data.List.NonEmpty as NE
3131
import Data.Word (Word16)
3232

@@ -44,14 +44,12 @@ initForwardSink
4444
initForwardSink ForwarderConfiguration{disconnectedQueueSize, connectedQueueSize} callback = do
4545
-- Initially we always create a big queue, because during node's start
4646
-- the number of tracing items may be very big.
47-
(queue, used) <- atomically $
48-
(,) <$> (newTVar =<< newTBQueue (fromIntegral disconnectedQueueSize))
49-
<*> newTVar False
47+
queueTVar <- atomically $
48+
newTVar =<< newTBQueue (fromIntegral disconnectedQueueSize)
5049
return $ ForwardSink
51-
{ forwardQueue = queue
50+
{ forwardQueue = queueTVar
5251
, disconnectedSize = disconnectedQueueSize
5352
, connectedSize = connectedQueueSize
54-
, wasUsed = used
5553
, overflowCallback = callback
5654
}
5755

@@ -83,23 +81,18 @@ writeToSinkSTM queueTVar traceObject = do
8381
readFromSink
8482
:: ForwardSink lo -- ^ The sink contains the queue we read 'TraceObject's from.
8583
-> Forwarder.TraceObjectForwarder lo IO ()
86-
readFromSink ForwardSink{forwardQueue, wasUsed} =
84+
readFromSink ForwardSink{forwardQueue} =
8785
Forwarder.TraceObjectForwarder
8886
{ Forwarder.recvMsgTraceObjectsRequest = \blocking (NumberOfTraceObjects n) ->
89-
atomically $ readFromSinkSTM
90-
forwardQueue
91-
wasUsed
92-
blocking
93-
n
87+
atomically $ readFromSinkSTM forwardQueue blocking n
9488
, Forwarder.recvMsgDone = return ()
9589
}
9690

9791
readFromSinkSTM :: TVar (TBQueue lo)
98-
-> TVar Bool
9992
-> TokBlockingStyle blocking
10093
-> Word16
10194
-> STM (BlockingReplyList blocking lo)
102-
readFromSinkSTM queueTVar wasUsedTVar blocking n = do
95+
readFromSinkSTM queueTVar blocking n = do
10396
---------- STM transaction: start ----------
10497
queue <- readTVar queueTVar
10598
isEmpty <- isEmptyTBQueue queue
@@ -115,7 +108,6 @@ readFromSinkSTM queueTVar wasUsedTVar blocking n = do
115108
then flushTBQueue queue -- Flush is non-blocking, can return empty.
116109
-- If requested maximum number is less than length, read `n` times.
117110
else replicateM (fromIntegral n) (readTBQueue queue)
118-
unless (null res) $ modifyTVar' wasUsedTVar . const $ True
119111
pure $ case blocking of
120112
TokNonBlocking -> NonBlockingReply res
121113
TokBlocking -> BlockingReply $ case NE.nonEmpty res of

0 commit comments

Comments
 (0)