Skip to content

Compilation speed degraded ~7x on 1.20.0-rc-2 #15145

@IvanIvanoff

Description

@IvanIvanoff

Elixir and Erlang/OTP versions

Erlang/OTP 27 [erts-15.0.1] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit]

Elixir 1.20.0-rc.2 (9a663cf) (compiled with Erlang/OTP 27)

Operating system

MacOS 15.7.3 (24G419)

Current behavior

Today I decided to test the latest main branch (installed main-otp-27 version with asdf).
I am comparing compilation speeds on the following public and rather big Elixir repo: https://github.com/santiment/sanbase2

On 1.20.0-rc.0 running time mix compile I get:
mix compile 64.59s user 15.51s system 437% cpu 18.301 total

On 1.20.0-rc.2 running time mix compile I get:
mix compile 496.95s user 19.19s system 193% cpu 4:26.57 total

Possible culprit might be the Absinthe's GraphQL definitions modules.
During compilation I see a lot of time is spent here:

Compiling lib/sanbase_web/graphql/schema/types/user_types.ex (it's taking more than 10s)
Compiling lib/sanbase_web/graphql/schema/types/queries_types.ex (it's taking more than 10s)
Compiling lib/sanbase_web/graphql/schema/types/project_types.ex (it's taking more than 10s)
Compiling lib/sanbase_web/graphql/schema/types/metric_types.ex (it's taking more than 10s)

Verifying SanbaseWeb.Graphql.ProjectTypes (it's taking more than 10s)
Verifying SanbaseWeb.Graphql.UserTypes (it's taking more than 10s)
Verifying SanbaseWeb.Graphql.MetricTypes (it's taking more than 10s)
Verifying SanbaseWeb.Graphql.QueriesTypes (it's taking more than 10s)
Verifying SanbaseWeb.Graphql.SocialDataTypes (it's taking more than 10s)

Expected behavior

Compilation speed should not degrade.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions