Skip to content

Commit 0736c85

Browse files
committed
Don't write back to the same input we read from; seems to cause deadlock
1 parent 42170ee commit 0736c85

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

hydra-node/src/Hydra/Node.hs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,6 @@ hydrate ::
186186
[EventSink (StateEvent tx) m] ->
187187
m (DraftHydraNode tx m)
188188
hydrate tracer env ledger initialChainState EventStore{eventSource, eventSink} eventSinks = do
189-
let allSinks = eventSink : eventSinks
190189
traceWith tracer LoadingState
191190
(lastEventId, (headState, chainStateHistory)) <-
192191
runConduitRes $
@@ -203,7 +202,7 @@ hydrate tracer env ledger initialChainState EventStore{eventSource, eventSink} e
203202
-- (Re-)submit events to sinks; de-duplication is handled by the sinks
204203
traceWith tracer ReplayingState
205204
runConduitRes $
206-
sourceEvents eventSource .| mapM_C (\e -> lift $ putEventsToSinks allSinks [e])
205+
sourceEvents eventSource .| mapM_C (\e -> lift $ putEventsToSinks eventSinks [e])
207206

208207
nodeState <- createNodeState (getLast lastEventId) headState
209208
inputQueue <- createInputQueue
@@ -215,7 +214,7 @@ hydrate tracer env ledger initialChainState EventStore{eventSource, eventSink} e
215214
, nodeState
216215
, inputQueue
217216
, eventSource
218-
, eventSinks = allSinks
217+
, eventSinks = eventSink : eventSinks
219218
, chainStateHistory
220219
}
221220
where

0 commit comments

Comments
 (0)