DescriptionMod a hash of test names to determine a shard, rather than the test index.
This keeps tests on a particular shard, until their name changes.
Currently tests can move to a different waterfall bot between runs;
whenever a test is added or removed "before" it in the test suite. This
makes it very hard to track failure history of a particular test, since
it can "disappear" from prior builds on that bot.
Also, since the shards do not have synced cycles, a revision that breaks
test "A" might never be in a blamelist. E.g. Bad revision X breaks test
"A", good revision X+1 adds unrelated test "B". Blamelists
bot0:[X],[X+1] and bot1:[X, X+1]. Only bot0 will run test "A", and only
on its second run, but it will not blame revision "X". Note "X" could
even be the revision that adds test "A".
Hashing the name does not guarantee an even distribution of tests.
However, the duration of a test is not predictable, so the change to
load variance should balance out except in pathological cases or very
small test suites.
BUG=372461
TBR=phajdan.jr@chromium.org
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=272920
Patch Set 1 #Patch Set 2 : cast #Messages
Total messages: 12 (0 generated)
|