jackdaw
jackdaw copied to clipboard
Race-condition in rest-proxy transport
Astute followers may have noticed some flakeyness in the rest-proxy transport test. On closer inspection, this does indeed seem like a bug although I'm not quite sure yet how it's happening. When the transport is created, it is supposed to wait until the consumer has performed at least one poll
before it "starts" the producer and allows any messages to be submitted by the test machine. This is intended to ensure that the journal captures all output initiated by the current test.
https://github.com/FundingCircle/jackdaw/blob/master/src/jackdaw/test/transports/rest_proxy.clj#L289
However careful inspection of the log for a test failure reveals that when the test intermittently fails, it looks like the producer is indeed being "started" before the consumer