Skip to content

Compile time regression with the new trait solver and diesel #131231

Open
@weiznich

Description

@weiznich

I tried this code: diesel-rs/diesel@381be19 with both RUSTFLAGS=-Znext-solver=globally set and not set

I expected to see this happen: Code compiles similar fast with both combinations

Instead, this happened: RUSTFLAGS=-Znext-solver=globally results in the code compiling takes over 10 times as long. For me the compiler takes ~10s to compile diesel from scratch with the old trait solver. The same operation takes 1:53 min, so over 10 times of what the old trait solver needed.

Meta

rustc --version --verbose:

rustc 1.83.0-nightly (9ff5fc4ff 2024-10-03)
binary: rustc
commit-hash: 9ff5fc4ffbbe1e911527aa054e789b05ae55ffcc
commit-date: 2024-10-03
host: x86_64-unknown-linux-gnu
release: 1.83.0-nightly
LLVM version: 19.1.0

@rustbot label +I-compiletime +WG-trait-system-refactor

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: This is a bug.I-compiletimeIssue: Problems and improvements with respect to compile times.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-typesRelevant to the types team, which will review and decide on the PR/issue.WG-trait-system-refactorThe Rustc Trait System Refactor Initiative (-Znext-solver)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions