Page MenuHomePhabricator

Clean up some ordering and strata edge cases in Phrequent
ClosedPublic

Authored by epriestley on Oct 18 2013, 9:43 PM.
Tags
None
Referenced Files
F13078554: D7350.diff
Tue, Apr 23, 5:06 PM
Unknown Object (File)
Sat, Apr 20, 6:04 PM
Unknown Object (File)
Fri, Apr 19, 4:45 PM
Unknown Object (File)
Wed, Apr 17, 1:07 AM
Unknown Object (File)
Mon, Apr 15, 5:24 PM
Unknown Object (File)
Sun, Apr 14, 8:20 AM
Unknown Object (File)
Thu, Apr 11, 5:28 PM
Unknown Object (File)
Thu, Apr 11, 2:30 PM
Subscribers

Details

Summary

Ref T3569. Two issues:

  1. Since sort() is not stable, instantaneous events (ending on the same second they start) would sometime sort wrong and produce the wrong results. Guarantee they sort correctly.
  2. Because events can end at any time, there are some additional special cases the algorithm didn't handle properly. Draw a bunch of ASCII art diagrams so these cases work properly.
Test Plan
  • No more fatal when tracking an object for the first time.
  • Unit tests.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

"Thank goodness for the ASCII art" the reviewer thought to himself. :D