diff options
author | 2018-04-10 12:30:03 -0700 | |
---|---|---|
committer | 2018-04-10 12:31:13 -0700 | |
commit | 2399df0dd858f24ce18b4ee85faa569d6b0bb19a (patch) | |
tree | 84a7613f10d94b2dc62e80c290328ba5f5e36659 /src/main/java/com/google/devtools/build/lib/cmdline/Label.java | |
parent | a124bbf0ccecb32fd2f62d309e3e9486986b4323 (diff) |
Fix bug in SkyQuery's parallel allrdeps with --nohost_deps.
The was that the presence of invalid dependency edges would incorrectly cause 'allrdeps' to not visit targets. Concrete example: if --nohost_deps was set and T1 depended on T via a host edge and T2 depended on T via a non-host edge then 'allrdeps(T)' might incorrectly not contain T2.
Along with fixing the bug, refactor ParallelVisitor's deduping logic: instead of deduping visitations inside #getVisitResult, dedupe them before adding them to #processingQueue. This should be a strict, small, performance win, especially for trivial visitations (e.g. RBuildFilesVisitor).
RELNOTES: None
PiperOrigin-RevId: 192327607
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/cmdline/Label.java')
0 files changed, 0 insertions, 0 deletions