You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There's a possible race where concurrent calls A & B to PublishCommitted can interleave over the same journal:
A: SetUUID
B: SetUUID
B: StartAppend, Marshal
A: StartAppend, Marshal
This is a problem because A is written to the journal after B, but is sequenced as "before" B. message.Sequencer will later discard A, thinking it a duplicate. This impacts services using a single Publisher.PublishCommitted with high concurrency (as is common for HTTP APIs writing event logs). This isn't an issue for PublishUncommitted, as that's already marked unsafe for concurrent use.
Update stream-sum example and test to reproduce the motivating bug (and catch any
regressions), by introducing parallel workers using a shared Publisher.
Fixesgazette#259
Update stream-sum example and test to reproduce the motivating bug (and catch any
regressions), by introducing parallel workers using a shared Publisher.
Fixesgazette#259
There's a possible race where concurrent calls
A
&B
to PublishCommitted can interleave over the same journal:This is a problem because A is written to the journal after B, but is sequenced as "before" B.
message.Sequencer
will later discard A, thinking it a duplicate. This impacts services using a singlePublisher.PublishCommitted
with high concurrency (as is common for HTTP APIs writing event logs). This isn't an issue forPublishUncommitted
, as that's already marked unsafe for concurrent use.Thanks to @michaelschiff for reporting.
The text was updated successfully, but these errors were encountered: