Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve query cycle errors for parallel queries #56434

Merged
merged 4 commits into from
Dec 7, 2018
Merged

Conversation

Zoxc
Copy link
Contributor

@Zoxc Zoxc commented Dec 2, 2018

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Dec 2, 2018
@@ -326,19 +326,17 @@ fn connected_to_root<'tcx>(
query: Lrc<QueryJob<'tcx>>,
visited: &mut FxHashSet<*const QueryJob<'tcx>>
) -> bool {
// This query is connected to the root (it has no query parent), return true
if query.parent.is_none() {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't this early return check cheaper than the contains below?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We want to return false here if query has already been visited instead of true.

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
travis_time:end:030e57a0:start=1543751957398736954,finish=1543752016041905299,duration=58643168345
$ git checkout -qf FETCH_HEAD
travis_fold:end:git.checkout

Encrypted environment variables have been removed for security reasons.
See https://docs.travis-ci.com/user/pull-requests/#Pull-Requests-and-Security-Restrictions
$ export SCCACHE_BUCKET=rust-lang-ci-sccache2
$ export SCCACHE_REGION=us-west-1
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:01:16] Successfully built d1777dfa56f7
[00:01:16] Successfully tagged rust-ci:latest
[00:01:16] Built container sha256:d1777dfa56f7971065d7166f637c9e2537ba462c00bdab915869f1936c4dbf48
[00:01:16] Uploading finished image to s3://rust-lang-ci-sccache2/docker/74b3db5e1a3f47588052701a2d4e2019f028a5a349ddce282ebe42cbaba480c22235c657c63a125b1e21cf77cdad928e69c660393bd9772ac119139c9934981d
[00:01:59] upload failed: - to s3://rust-lang-ci-sccache2/docker/74b3db5e1a3f47588052701a2d4e2019f028a5a349ddce282ebe42cbaba480c22235c657c63a125b1e21cf77cdad928e69c660393bd9772ac119139c9934981d Unable to locate credentials

[00:01:59] travis_time:end:0feeb9e2:start=1543752037038491984,finish=1543752144887349960,duration=107848857976
[CI_JOB_NAME=x86_64-gnu-llvm-5.0]
[00:02:00] [CI_JOB_NAME=x86_64-gnu-llvm-5.0]
---
[00:50:20] .................................................................................................... 200/5107
[00:50:23] .................................................................................................... 300/5107
[00:50:26] .................................................................................................... 400/5107
[00:50:30] .................................................................................................... 500/5107
[00:50:33] .............................i.................................F.................................... 600/5107
[00:50:37] .................................................................................................... 700/5107
[00:50:43] ..................................................F..............................................i.. 800/5107
[00:50:47] ..........FFFi...................................................................................... 900/5107
[00:50:51] ....................iiiii........................................................................... 1000/5107
[00:50:56] .................................................................................................... 1200/5107
[00:50:59] .................................................................................................... 1300/5107
[00:50:59] .................................................................................................... 1300/5107
[00:51:01] ......F............................................................................................. 1400/5107
[00:51:07] .......................i....................................................................i....... 1600/5107
[00:51:07] .......................i....................................................................i....... 1600/5107
[00:51:10] ...................................................F................................................ 1700/5107
[00:51:14] ..................................................................FF................................ 1800/5107
[00:51:18] ..........................................F......................................................... 1900/5107
[00:51:21] ..................................i....F............................................................ 2000/5107
[00:51:25] ....................................................................................F.............F. 2100/5107
[00:51:29] .........................................F..............................F.FF........................ 2200/5107
[00:51:33] ........................................F........................................................... 2300/5107
[00:51:37] ..............................FF.....................................................F.............. 2400/5107
[00:51:41] .....................F..........................F................................................... 2500/5107
[00:51:44] .................................................................................................... 2600/5107
[00:51:49] ...F................................................................................................ 2700/5107
[00:51:56] .................................................................................................... 2900/5107
[00:51:59] .................................................................................................... 3000/5107
[00:52:03] .............................................................................i...................... 3100/5107
[00:52:06] .................................................................................................... 3200/5107
---
[00:52:22] ........................................i........................................................... 3700/5107
[00:52:23] ...............................................................................................i.... 3800/5107
[00:52:25] .................................................................................................... 3900/5107
[00:52:32] .................................................................................................... 4000/5107
[00:52:35] ........................................................F........................................... 4100/5107
[00:52:38] .................................................................................................... 4200/5107
[00:52:42] ............F...........................F..............................................i............ 4300/5107
[00:52:51] .................................................................................................... 4500/5107
[00:52:51] .................................................................................................... 4500/5107
[00:52:54] ......................................F............................................................. 4600/5107
[00:53:01] .................................................................................................... 4800/5107
[00:53:05] .................................................................................................... 4900/5107
n with `RUST_BACKTRACE=1` for a backtrace.
[00:53:11] 
---
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/consts/const-size_of-cycle.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/consts/const-size_of-cycle.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/cycle-trait/cycle-trait-default-type-trait.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/cycle-trait/cycle-trait-default-type-trait.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/cycle-trait/cycle-trait-default-type-trait/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/cycle-trait/cycle-trait-default-type-trait/auxiliary" "-A" "unused"
[00:53:11] stdout:
[00:53:11] ----------------------------s error","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to previous error\n\n"}
[00:53:11] {"message":"For more information about this error, try `rustc --explain E0391`.","code":null,"level":"","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0391`.\n"}
[00:53:11] error: internal compiler error: unexpected panic
[00:53:11] 
[00:53:11] note: the compiler unexpectedly panicked. this is a bug.
[00:53:11] 
[00:53:11] 
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/cycle-trait/cycle-trait-default-type-trait.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/cycle-trait/cycle-trait-default-type-trait.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/cycle-trait/cycle-trait-supertrait-direct.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/cycle-trait/cycle-trait-supertrait-direct.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/cycle-trait/cycle-trait-supertrait-direct/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/cycle-trait/cycle-trait-supertrait-direct/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/cycle-trait/cycle-trait-supertrait-direct.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/cycle-trait/cycle-trait-supertrait-direct.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/cycle-trait/cycle-trait-supertrait-indirect.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] command: "/checkout/obj/4-unknown-linux-gnu
[00:53:11] 
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/existential_types/no_inferrable_concrete_type.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/existential_types/no_inferrable_concrete_type.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/impl-trait/auto-trait-leak.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/impl-trait/auto-trait-leak.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/auto-trait-leak/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/auto-trait-leak/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: thi/issues/issue-20772.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/issues/issue-21177.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/issues/issue-21177.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-21177/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-21177/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: comphttps://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/issues/issue-22673.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/issues/issue-22673.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/issues/issue-23302-1.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/issues/issue-23302-1.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-23302-1/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-23302-1/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/issues/issue-23302-2.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/issues/issue-23302-2.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/issues/issue-23302-3.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/issues/issue-23302-3.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-23302-3/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-23302-3/auxiliary" "-A" "unused"
[00:53:11] stnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-26548/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/issues/issue-26548.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/issues/issue-26548.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/issues/issue-3008-1.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/issues/issue-3008-1.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-3008-1/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-3008-1/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/issues/issue-3008-1.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/issues/issue-3008-1.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/issues/issue-3008-2.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Soath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/issues/issue-32326.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] thread '[ui] ui/issues/issue-32326.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[00:53:11] 
[00:53:11] ---- [ui] ui/issues/issue-34373.rs stdout ----
[00:53:11] 
[00:53:11] error: Error: expected failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/issues/issue-34373.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-34373/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-34373/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] error: internal compiler error: unexpected panic
[00:53:11] 
[00:53:11] note: the compiler unexpectedly panicked. this is a bug.
[00:53:11] 
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-repcted failure status (Some(1)) but received status Some(101).
[00:53:11] status: exit code: 101
[00:53:11] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/span/recursive-type-field.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/span/recursive-type-field/a" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/span/recursive-type-field/auxiliary" "-A" "unused"
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] stderr:
---
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] uc
[00:53:11] thread '[ui] uc
[00:53:11] 
[00:53:11] note: the compiler unexpectedly panicked. this is a bug.
[00:53:11] 
[00:53:11] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:53:11] 
[00:53:11] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:53:11] 
[00:53:11] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:53:11] 
[00:53:11] ------------------------------------------
[00:53:11] 
[00:53:11] thread '[ui] ui/variance/variance-regions-unused-indirect.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
---
[00:53:11] 
[00:53:11] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[00:53:11] 
[00:53:11] 
[00:53:11] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/compiletest" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "--src-base" "/checkout/src/test/ui" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "ui" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-5.0/bin/FileCheck" "--host-rusttravis_time:end:07eec118:start=1543752025243080075,finish=1543755217109840751,duration=3191866760676
travis_time:start:0dab0f20
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Sun Dec  2 12:53:37 UTC 2018
Sun, 02 Dec 2018 12:53:37 GMT

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
travis_time:end:124fcd3a:start=1543785306787115816,finish=1543785360276971360,duration=53489855544
$ git checkout -qf FETCH_HEAD
travis_fold:end:git.checkout

Encrypted environment variables have been removed for security reasons.
See https://docs.travis-ci.com/user/pull-requests/#Pull-Requests-and-Security-Restrictions
$ export SCCACHE_BUCKET=rust-lang-ci-sccache2
$ export SCCACHE_REGION=us-west-1
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:01:13] Successfully built 70981647206b
[00:01:13] Successfully tagged rust-ci:latest
[00:01:13] Built container sha256:70981647206b232576a889bdaad1512823623c45901cd994252c34ba957d030b
[00:01:13] Uploading finished image to s3://rust-lang-ci-sccache2/docker/74b3db5e1a3f47588052701a2d4e2019f028a5a349ddce282ebe42cbaba480c22235c657c63a125b1e21cf77cdad928e69c660393bd9772ac119139c9934981d
[00:01:56] upload failed: - to s3://rust-lang-ci-sccache2/docker/74b3db5e1a3f47588052701a2d4e2019f028a5a349ddce282ebe42cbaba480c22235c657c63a125b1e21cf77cdad928e69c660393bd9772ac119139c9934981d Unable to locate credentials

[00:01:56] travis_time:end:27793b50:start=1543785379857906141,finish=1543785485573753997,duration=105715847856
[CI_JOB_NAME=x86_64-gnu-llvm-5.0]
[00:01:56] [CI_JOB_NAME=x86_64-gnu-llvm-5.0]
---
[00:52:36] .............................................................................i...................... 1900/2924
[00:52:54] ................................................i................................................... 2000/2924
[00:53:14] .................................................................................................... 2100/2924
[00:53:28] .................................................................................................... 2200/2924
[00:53:37] ..............................................ii....................F............................... 2300/2924
[00:54:02] .................................................................................................... 2500/2924
[00:54:33] .................................................................................................... 2600/2924
[00:54:42] .................................................................................................... 2700/2924
[00:54:52] .................................................................................................... 2800/2924
---
travis_time:end:0851ab53:start=1543788677389523108,finish=1543788677393382688,duration=3859580
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:0b00eb4e
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

Copy link
Member

@michaelwoerister michaelwoerister left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @Zoxc! r=me with the nits addressed.

query.info.query.hash_stable(&mut hcx, &mut stable_hasher);
let no_span = span == DUMMY_SP;
// Prefer entry points which have valid spans for nicer error messages
(no_span, stable_hasher.finish())
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like things with no span would be preferred to things with span? Can you make no_span an integer so that one can easier see what's going on?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is let no_span = (span == DUMMY_SP) as u8 any better?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd prefer something like:

// Sort span-less queries to the back
let span_cmp = if span == DUMMY_SPAN { 1 } else { 0 };

@@ -21,6 +21,7 @@ RUN sh /scripts/sccache.sh

# using llvm-link-shared due to libffi issues -- see #34486
ENV RUST_CONFIGURE_ARGS \
--enable-experimental-parallel-queries \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This shouldn't be committed, I guess.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wouldn't mind it too much =P

@Zoxc Zoxc force-pushed the par-tests branch 2 times, most recently from 64673f1 to 57db5ad Compare December 6, 2018 22:15
@Zoxc
Copy link
Contributor Author

Zoxc commented Dec 6, 2018

@bors r=michaelwoerister

@bors
Copy link
Contributor

bors commented Dec 6, 2018

📌 Commit 813b484 has been approved by michaelwoerister

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 6, 2018
kennytm added a commit to kennytm/rust that referenced this pull request Dec 7, 2018
bors added a commit that referenced this pull request Dec 7, 2018
Rollup of 7 pull requests

Successful merges:

 - #56000 (Add Armv8-M Mainline targets)
 - #56250 (Introduce ptr::hash for references)
 - #56434 (Improve query cycle errors for parallel queries)
 - #56516 (Replace usages of `..i + 1` ranges with `..=i`.)
 - #56555 (Send textual profile data to stderr, not stdout)
 - #56561 (Fix bug in from_key_hashed_nocheck)
 - #56574 (Fix a stutter in the docs for slice::exact_chunks)

Failed merges:

r? @ghost
@bors
Copy link
Contributor

bors commented Dec 7, 2018

⌛ Testing commit 813b484 with merge fc84f5f...

@bors bors merged commit 813b484 into rust-lang:master Dec 7, 2018
@@ -1942,8 +1942,12 @@ pub mod tls {
/// This is a callback from libsyntax as it cannot access the implicit state
/// in librustc otherwise
fn span_debug(span: syntax_pos::Span, f: &mut fmt::Formatter<'_>) -> fmt::Result {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am confused, isn't this only used at the same time as the TLS TyCtxt is present?
How can with_opt give you None? Did that code change somehow?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With parallel queries we set this on the worker threads when we create the thread pool. In that case it acts it's more like runtime linking and it will be set when no TyCtxt is around.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not set it at the same time as the TyCtxt TLS?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to set this on all worker threads, which we can easily do when creating the thread pool.
We could put it in ImplicitCtxt, but it would never change, so that would just make queries slower for no reason.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In that case, can we make it so the debug callbacks are all set globally before entering even the global TyCtxt even without parallel queries?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we just need a scoped_thread_local for the CodeMap? I feel like that would probably be a cleaner design.

@bors
Copy link
Contributor

bors commented Dec 7, 2018

💥 Test timed out

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 7, 2018
@kennytm kennytm removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Dec 9, 2018
@Zoxc Zoxc deleted the par-tests branch December 13, 2018 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants