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

refineImports plugin causes excessive memory use #2962

Closed
mpickering opened this issue Jun 16, 2022 · 2 comments · Fixed by #2995
Closed

refineImports plugin causes excessive memory use #2962

mpickering opened this issue Jun 16, 2022 · 2 comments · Fixed by #2995
Labels
status: needs triage type: bug Something isn't right: doesn't work as intended, documentation is missing/outdated, etc..

Comments

@mpickering
Copy link
Contributor

The refineImports plugin calls TypeCheck on all transitively imported modules which violates the important memory invariant that we only store TypeCheck results for files of interest. I recommend disabling this plugin by default until it is fixed.

My experience on GHC is that disabling this plugin causes start-up memory usage to decrease from 3GB to 1GB.

@mpickering mpickering added type: bug Something isn't right: doesn't work as intended, documentation is missing/outdated, etc.. status: needs triage labels Jun 16, 2022
@michaelpj
Copy link
Collaborator

Wow, yes, that's quite bad!

@pepeiborra
Copy link
Collaborator

I noticed this a while ago but failed to raise an issue, my bad. Ping @rayshih would you mind contributing a fix?

wz1000 added a commit that referenced this issue Jun 28, 2022
Also add an assertion to check that we never use non-FOI rules

Fixes #2962
wz1000 added a commit that referenced this issue Jul 20, 2022
Also add an assertion to check that we never use non-FOI rules

Fixes #2962
wz1000 added a commit that referenced this issue Jul 20, 2022
Also add an assertion to check that we never use non-FOI rules

Fixes #2962
wz1000 added a commit that referenced this issue Jul 21, 2022
Also add an assertion to check that we never use non-FOI rules

Fixes #2962
wz1000 added a commit that referenced this issue Jul 21, 2022
Also add an assertion to check that we never use non-FOI rules

Fixes #2962
sloorush pushed a commit to sloorush/haskell-language-server that referenced this issue Sep 12, 2022
Also add an assertion to check that we never use non-FOI rules

Fixes haskell#2962
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: needs triage type: bug Something isn't right: doesn't work as intended, documentation is missing/outdated, etc..
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants