-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Memory issue (crash) #3733
Comments
Reproduced it with these instructions on a build of mine. Impressive 🥇 |
Crashing under a debugger shows similar failure to most of the crash dumps in #3722: Stack trace suggests running out of memory on the Lua side:
|
--- SCRIPT ERROR --- I've had these crashes a few times too |
Similar crash, but script error says not enough memory. https://imgur.com/OblK0Cr screen snip of the crash screen. |
I have a suspicion this may be an ever-expanding undo snapshot stack, I'm going to take a stab at having the stack store diffs rather than snapshots, and putting a cap on the height of the stack |
I've had 2 random pob crashes lately, in one case while tinkering with the skill tree, the other time (just now) I had inventory open and had just alt-tabbed out for 2 secs (was comparing items on trade vs mine). The event Viewer error is same for both crashes: Faulting application name: Path of Building.exe, version: 0.0.0.0, time stamp: 0x606d1b4c |
Is there any short-term solution for this until the underlying cause is fixed? I keep coming back to this issue every few days when it crashes causing me to lose an hour or two of work every time :( Maybe save the unsaved work any time something has changed to a temp file similar to Notepad++? Until either, it's saved properly or gracefully quit and an unsaved work popup is shown? |
So, I've investigated this a bit further, and like @ifnjeff suspected - the undo list is growing too fast. So the options and respective disadvantages I see:
If anyone has any other ideas feel free to add them |
@Fish013
|
Apologies for not following up on this a while ago, I made some discoveries and attempts that might be useful, but I never arrived at a good final solution. @Fish013 is on the right track, I'll add the extra details I had found in case you or anyone else wants to see this through. Regarding the issue: One reason for the large size of each snapshot is that some of the tables being copied have references to parts of the enormous constant I considered two solutions, both of which I got a bit stalled on because of unfamiliarity with lua, and how to get around it's odd table semantics.
|
Check version
Check for duplicates
What is the expected behaviour/value?
PoB not crashing/running out of memory.
What is the actual behaviour/value?
PoB crashing/running out of memory.
How to reproduce the issue
I tried with two character builds, so probably not buildscpecific and 100% reproducable.
(Found this accidentally while comparing stat changes switching two items.)
(PoB version 2.13.0, currently latest)
Build code
Screenshots
The text was updated successfully, but these errors were encountered: