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

Investigate memory issues on Windows #16594

Closed
SevInf opened this issue Dec 2, 2022 · 0 comments · Fixed by #16655
Closed

Investigate memory issues on Windows #16594

SevInf opened this issue Dec 2, 2022 · 0 comments · Fixed by #16655
Assignees
Labels
kind/tech A technical change. team/client Issue for team Client. tech/typescript Issue for tech TypeScript. topic: js heap out of memory topic: memory leak
Milestone

Comments

@SevInf
Copy link
Contributor

SevInf commented Dec 2, 2022

Our CI pipelines fail with out of memory issues since recently. It looks like there might be a memory leak again. We need to take a look into it and fix the problem.

@SevInf SevInf self-assigned this Dec 2, 2022
@mcbethio mcbethio added this to the 4.8.0 milestone Dec 2, 2022
@eviefp eviefp added the team/client Issue for team Client. label Dec 5, 2022
SevInf added a commit that referenced this issue Dec 6, 2022
This fixes 2 memory leaks in our test setup:

1. Jest passes every file through transform and caches the results
on disk and in memory. That included every generated client as well, so
they were kept in memory from the time they were first loaded until
process finishes, even though they are needed only for 1 test suite.
Fixed by using `transformIgnorePatterns` options in jest config.

2. `debug` library keeps a list of last 100 logs that would be used for
panic error messages later. If error object gets into this list, it will
keep whole jest sandbox alive until process finishes. Fixed by clearing
logs on `$disconnect`

Fix #16594
SevInf added a commit that referenced this issue Dec 7, 2022
This fixes 2 memory leaks in our test setup:

1. Jest passes every file through transform and caches the results
on disk and in memory. That included every generated client as well, so
they were kept in memory from the time they were first loaded until
process finishes, even though they are needed only for 1 test suite.
Fixed by using `transformIgnorePatterns` options in jest config.

2. `debug` library keeps a list of last 100 logs that would be used for
panic error messages later. If error object gets into this list, it will
keep whole jest sandbox alive until process finishes. Fixed by clearing
logs on `$disconnect`

Fix #16594
SevInf added a commit that referenced this issue Dec 7, 2022
This fixes 2 memory leaks in our test setup:

1. Jest passes every file through transform and caches the results
on disk and in memory. That included every generated client as well, so
they were kept in memory from the time they were first loaded until
process finishes, even though they are needed only for 1 test suite.
Fixed by using `transformIgnorePatterns` options in jest config.

2. `debug` library keeps a list of last 100 logs that would be used for
panic error messages later. If error object gets into this list, it will
keep whole jest sandbox alive until process finishes. Fixed by clearing
logs on `$disconnect`

Fix #16594
jkomyno pushed a commit that referenced this issue Dec 21, 2022
This fixes 2 memory leaks in our test setup:

1. Jest passes every file through transform and caches the results
on disk and in memory. That included every generated client as well, so
they were kept in memory from the time they were first loaded until
process finishes, even though they are needed only for 1 test suite.
Fixed by using `transformIgnorePatterns` options in jest config.

2. `debug` library keeps a list of last 100 logs that would be used for
panic error messages later. If error object gets into this list, it will
keep whole jest sandbox alive until process finishes. Fixed by clearing
logs on `$disconnect`

Fix #16594
jkomyno pushed a commit that referenced this issue Dec 21, 2022
This fixes 2 memory leaks in our test setup:

1. Jest passes every file through transform and caches the results
on disk and in memory. That included every generated client as well, so
they were kept in memory from the time they were first loaded until
process finishes, even though they are needed only for 1 test suite.
Fixed by using `transformIgnorePatterns` options in jest config.

2. `debug` library keeps a list of last 100 logs that would be used for
panic error messages later. If error object gets into this list, it will
keep whole jest sandbox alive until process finishes. Fixed by clearing
logs on `$disconnect`

Fix #16594
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/tech A technical change. team/client Issue for team Client. tech/typescript Issue for tech TypeScript. topic: js heap out of memory topic: memory leak
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants