aurora-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John Sirois" <>
Subject Re: Review Request 41915: Fixup TaskObserverTest to respect thread memory models.
Date Tue, 05 Jan 2016 03:02:13 GMT

This is an automatically generated e-mail. To reply, visit:

(Updated Jan. 4, 2016, 8:02 p.m.)

Review request for Aurora, Maxim Khutornenko and Bill Farner.

Bugs: AURORA-1570

Repository: aurora

Description (updated)

Previously, a mock threading.Event was waited on in one thread
and the count of waits was read in another thread.  Most thread
memory models do not guaranty reads are fresh in this scenario
unless there is a memory barrier of some sort forcing per-cpu
caches to be flushed.

This change uses the underlying threading.Event as the memory
barrier instead of mocking it and just wraps the event to record
calls manually.

 src/main/python/apache/thermos/observer/      |  5 +++--
 src/test/python/apache/thermos/observer/ | 36 ++++++++++++++++++++++++------------
 2 files changed, 27 insertions(+), 14 deletions(-)


  src/main/python/apache/thermos/observer/ 1485de8faef52716f11b82a3556064de26c67427

  src/test/python/apache/thermos/observer/ ace15c5305e75fac3a82971f4d71b92bcb37bafc



Before this change I got a failure between 1/5 and 1/10th of the
time via:
while true
  ./pants test src/test/python/apache/thermos/observer/ -- -kTaskObserverTest

After the change I cannot trigger the failure.


John Sirois

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message