test_listener_event_process_state checks for Threads
and Frames in the multithreaded_queue. The listener_func has
more computational load, which may be latter executed than the
pop leading to the failure. This patch tries to only check for
frames in listener_func as presence of frames also confirms
prescence of threads and avoids the second push into the
multithreaded_queue.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
I am somewhat surprised that this solves anything (I mean, you claim that the problem is the ordering between the push and pop, but I don't see how this could change that ordering). If the problem was that the check_listener was not waiting long enough, then it should be sufficient to increase the timeout...
That said, I don't think it should make things any worse either, so I'm ready to give it a go...
Comment Actions
@labath, Well the other tests in TestMultithreaded.py are not flaky and I see the only difference as an extra push operation, so I thought the push operation could be potential bottleneck.