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
I have a repository (a simple actix-web server) that isn't compiling anymore, because the compiler takes way too long (about 30 minutes) to recompile the crate. The repo re-compiles fine in about 30 seconds on 1.45-stable, but on 1.46-stable and nightly it takes 30+ minutes. I've cloned my repository as it is now: https://github.com/fschutt/example-actix-site
To compile it, just do cargo build (the server won't run, but it should build). A few days ago, this exact repo compiled in about about 3 - 5 minutes from scratch and it took about 15 - 30 seconds to rebuild. After upgrading the compiler to 1.46 or nightly, it builds very very slowly and when I run it with -Ztimings cargo simply sigkills rustc because it's taking too long. When running without -Ztimings, it does build, but it takes 30+ minutes to do so.
Today, I tested that the bug happens both on the latest stable version and the latest nightly version (2020-10-03), and verified that the bug happens on both Windows and Linux. I also verified that it doesn't happen on 1.45.0-stable.
Notice the difference in the LLVM version, possibly related to #66617?
"Include a backtrace" - yeah that's the funny part, there is no backtrace because rustc gets a 9 SIGKILL because of a timeout. Sadly I don't have a backtrace.
The log I can perceive is this:
$ rustup update nightly && rustup default nightly && cargo clean && RUST_BACKTRACE=full RUSTFLAGS="-Ztime-passes" cargo build > out.txt
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'
nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.48.0-nightly (8876ffc92 2020-10-02)
info: checking for self-updates
info: using existing install for 'nightly-x86_64-unknown-linux-gnu'
info: default toolchain set to 'nightly-x86_64-unknown-linux-gnu'
nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.48.0-nightly (8876ffc92 2020-10-02)
Compiling cfg-if v0.1.10
Compiling libc v0.2.77
Compiling autocfg v1.0.1
Compiling proc-macro2 v1.0.23
Completed cfg-if v0.1.10 in 0.1s
Compiling unicode-xid v0.2.1
Completed unicode-xid v0.2.1 in 0.3s
[...]
Completed ghash v0.3.0 in 0.3s
Completed thiserror v1.0.20 in 0.3s
Compiling time-macros v0.1.1
Completed time-macros v0.1.1 in 0.1s
Compiling actix-threadpool v0.3.3
Completed actix-threadpool v0.3.3 in 0.6s
Completed v_escape v0.13.1 in 0.2s
Completed rustls v0.18.1 in 23.0s
Compiling postgres-protocol v0.5.2
Completed tokio v0.2.22 in 21.3s
[...]
Compiling actix-session v0.4.0
Compiling actix-files v0.3.0
Completed actix-session v0.4.0 in 1.8s
Completed actix-web v3.0.2 in 9.5s
Completed actix-files v0.3.0 in 3.0s
Compiling m4p v0.1.0 (/home/felix/Development/m4p)
Timing report saved to /home/felix/Development/m4p/cargo-timing-20201003T102224Z.html
error: could not compile `m4p`
Caused by:
process didn't exit successfully: `
rustc --crate-name m4p --edition=2018 src/main.rs --error-format=json
--json=diagnostic-rendered-ansi,artifacts --crate-type bin
--emit=dep-info,link -C embed-bitcode=no -C debuginfo=2
-C metadata=22a9b879b2ed1adc -C extra-filename=-22a9b879b2ed1adc
--out-dir /home/felix/Development/m4p/target/debug/deps
-C incremental=/home/felix/Development/m4p/target/debug/incremental
-L dependency=/home/felix/Development/m4p/target/debug/deps
--extern actix_files=/home/felix/Development/m4p/target/debug/deps/libactix_files-e695f67b73f99e5b.rlib
--extern actix_session=/home/felix/Development/m4p/target/debug/deps/libactix_session-d585b86d2d2e4a82.rlib
--extern actix_web=/home/felix/Development/m4p/target/debug/deps/libactix_web-2a43995a0412168a.rlib
--extern chrono=/home/felix/Development/m4p/target/debug/deps/libchrono-deca12871bfa1e40.rlib
--extern config=/home/felix/Development/m4p/target/debug/deps/libconfig-f558148ed440ebf8.rlib
--extern cookie=/home/felix/Development/m4p/target/debug/deps/libcookie-40ab7b95923920cb.rlib
--extern deadpool_postgres=/home/felix/Development/m4p/target/debug/deps/libdeadpool_postgres-bec85540a48b26fa.rlib
--extern dotenv=/home/felix/Development/m4p/target/debug/deps/libdotenv-ef265213814e1891.rlib
--extern fast_chemail=/home/felix/Development/m4p/target/debug/deps/libfast_chemail-620b93603bf123c6.rlib
--extern image=/home/felix/Development/m4p/target/debug/deps/libimage-940aee2557418a77.rlib
--extern lettre=/home/felix/Development/m4p/target/debug/deps/liblettre-a4b24a82b7bb7002.rlib
--extern mime=/home/felix/Development/m4p/target/debug/deps/libmime-8080671c8b888b7d.rlib
--extern printpdf=/home/felix/Development/m4p/target/debug/deps/libprintpdf-19cadf9472f95c5e.rlib
--extern rustls=/home/felix/Development/m4p/target/debug/deps/librustls-4c397a67d9bbc694.rlib
--extern serde=/home/felix/Development/m4p/target/debug/deps/libserde-ef931f378a4039d7.rlib
--extern serde_json=/home/felix/Development/m4p/target/debug/deps/libserde_json-7020026d8a38b1d1.rlib
--extern sodiumoxide=/home/felix/Development/m4p/target/debug/deps/libsodiumoxide-8eb0b011062484de.rlib
--extern tokio_pg_mapper=/home/felix/Development/m4p/target/debug/deps/libtokio_pg_mapper-d59273eae2d9cbce.rlib
--extern tokio_pg_mapper_derive=/home/felix/Development/m4p/target/debug/deps/libtokio_pg_mapper_derive-762f0b80a1a448d4.so
--extern tokio_postgres=/home/felix/Development/m4p/target/debug/deps/libtokio_postgres-546f30c79cce20b7.rlib
--extern uuid=/home/felix/Development/m4p/target/debug/deps/libuuid-233c1738ad97210e.rlib
-Ztime-passes
-L native=/home/felix/Development/m4p/target/debug/build/ring-3974b5df818fe7df/out
-L native=/home/felix/Development/m4p/target/debug/build/brotli-sys-4f3bb85a6c6e368e/out
-L native=/home/felix/Development/m4p/target/debug/build/libsodium-sys-934800f85608c6c7/out/installed/lib` (signal: 9, SIGKILL: kill)
Command exited with non-zero status 101
1808.10user 93.40system 18:31.18elapsed 171%CPU (0avgtext+0avgdata 2598412maxresident)k
4701904inputs+4178376outputs (41769major+19941245minor)pagefaults 0swaps
When I open the out.txt to look at the time passes, it just ends with this:
... and then it times out and crashes. I don't get a backtrace, I don't know which pass the compiler is actually hanging in, all I know so far is that it's only happening when putting the final binary together. I've attached the timing reports in the zip file. For now I can work with the 1.45.0 compiler, but it would be great if this would be fixed.
I have a repository (a simple actix-web server) that isn't compiling anymore, because the compiler takes way too long (about 30 minutes) to recompile the crate. The repo re-compiles fine in about 30 seconds on 1.45-stable, but on 1.46-stable and nightly it takes 30+ minutes. I've cloned my repository as it is now: https://github.com/fschutt/example-actix-site
To compile it, just do
cargo build
(the server won't run, but it should build). A few days ago, this exact repo compiled in about about 3 - 5 minutes from scratch and it took about 15 - 30 seconds to rebuild. After upgrading the compiler to 1.46 or nightly, it builds very very slowly and when I run it with-Ztimings
cargo simply sigkills rustc because it's taking too long. When running without-Ztimings
, it does build, but it takes 30+ minutes to do so.Today, I tested that the bug happens both on the latest stable version and the latest nightly version (2020-10-03), and verified that the bug happens on both Windows and Linux. I also verified that it doesn't happen on 1.45.0-stable.
Meta
Succeeded on 1.45.0-stable:
Failed on Windows (nightly 1.48 + 1.46), Linux (nightly 1.48 + 1.46)
Notice the difference in the LLVM version, possibly related to #66617?
"Include a backtrace" - yeah that's the funny part, there is no backtrace because rustc gets a
9 SIGKILL
because of a timeout. Sadly I don't have a backtrace.The log I can perceive is this:
When I open the
out.txt
to look at the time passes, it just ends with this:... and then it times out and crashes. I don't get a backtrace, I don't know which pass the compiler is actually hanging in, all I know so far is that it's only happening when putting the final binary together. I've attached the timing reports in the zip file. For now I can work with the 1.45.0 compiler, but it would be great if this would be fixed.
timing.zip
The text was updated successfully, but these errors were encountered: