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
{{ message }}
Repository navigation
Tachyon: GeckoCollector closes open markers too early when replay batches arrive out of order #160735
GeckoCollector.collect()sets last_sample_time to the last timestamp of the most recent call, not the latest one seen. During binary replay, batches from different threads can arrive out of time order, so markers get closed too early and can even end before they start.
from_remote_debuggingimportFrameInfo, InterpreterInfo, LocationInfo, ThreadInfofromprofiling.sampling.gecko_collectorimportGeckoCollectorcollector=GeckoCollector(1000)
frames= [FrameInfo(("t.py", LocationInfo((1, 1, 0, 0)), "f", None))]
# Thread 2's last batch arrives after thread 1's, as binary replay can deliver themfortid, timestampsin [(1, [1000]), (2, [1500]), (1, [3000, 4000]), (2, [2500])]:
collector.collect([InterpreterInfo((0, [ThreadInfo((tid, 0, frames))]))],
timestamps_us=timestamps)
print(collector.last_sample_time) # 1.5, should be 3.0
Activity