-
Notifications
You must be signed in to change notification settings - Fork 284
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
Weird memleak when logging exception stacktraces #2221
Comments
|
I've probably bisected the PR behind this using digger with And the winner is: dlang/druntime#2169 @jacob-carlborg can you please provide some insight? |
|
Also note that when I tried to check the leaks using |
|
Also with dmd's Could't it be caused by some memory fragmentation? |
Hmm, that's interesting. I see that you're on Linux but my changes should not have affected Linux. I'll have a look. |
|
I had a quick look, I couldn't find anything obvious. |
|
I tried to remove all After this I didn't understand why this should be triggered by vibe-d, so I tried testing more and found that it isn't! Tried for example with a pretty large And went from 100MB with just But I should mention that it's ok in release. So I guess that this should go to dmd issues after all... |
|
Moved it here: https://issues.dlang.org/show_bug.cgi?id=19322 |
I've found out by accident that many logged exception stackstraces leads to alarmingly large memory leak.
If I run this with
dmd >= 2.081.0the process is almost 500MB in memory.GC.collect() and GC.minimize()doesn't matter.If run with new vibe-core it's somewhat better at about 400MB in memory.
When just exception message is logged, process is at 6MB - what a difference.
Same when run ie with
dmd-2.080.1or without vibe-d.As this behavior is visible only with vibe-d I picked it's issues list to report this.
Something changed between
dmd-2.080.1anddmd-2.081.0which caused this in vibe-d or some conditional compilation in vibe-d is behind this?Tested on fedora 28 x86_64 with multiple dmd versions and vibe-d-0.8.4.
The text was updated successfully, but these errors were encountered: