Opened 11 years ago
Closed 10 years ago
#1842 closed defect (fixed)
Crash in CBinarySerializerScriptImpl (multiplayer match)
Reported by: | Dan Newman | Owned by: | |
---|---|---|---|
Priority: | Must Have | Milestone: | Alpha 15 |
Component: | Core engine | Keywords: | crash crashlog |
Cc: | Patch: |
Description
The game crashed. I am trying to help by attaching the logs.
Attachments (2)
Change History (16)
by , 11 years ago
Attachment: | crashlog.dmp added |
---|
by , 11 years ago
Attachment: | crashlog.txt added |
---|
comment:1 by , 11 years ago
comment:2 by , 11 years ago
Priority: | Release Blocker → Should Have |
---|---|
Summary: | Crash → Crash in CBinarySerializerScriptImpl (multiplayer match) |
follow-up: 5 comment:4 by , 11 years ago
Keywords: | crashlog added |
---|
Fixed with #1842? Closing with "needsinfo"?
comment:5 by , 11 years ago
comment:6 by , 11 years ago
Not fixed, I got this error today with r13758 on a random map, 4 humans vs 4 Aegis bots.
comment:7 by , 11 years ago
Easy way to reproduce this in single player: use serialization test mode in Atlas, on fast speed and wait a while.
comment:8 by , 11 years ago
Milestone: | Backlog → Alpha 15 |
---|---|
Priority: | Should Have → Must Have |
So the problem is the arena allocator used by the binary serializer is failing. In the case of the serialization test, there was a memory leak in libXML2, this case should be fixed by r13817.
There must be a different cause in multiplayer games. We can do two things: 1) switch to a dynamic arena instead of a fixed 16 MB size, so it can start much smaller, 2) look for memory leaks and monitor memory usage during games. (1) is a good idea anyway since simulation messages also get serialized and they really don't need to be allocating 16 MB arenas all the time.
comment:13 by , 10 years ago
Milestone: | Alpha 15 → Alpha 16 |
---|
Is this still relevant? Pushing to A16 in the meantime.
comment:14 by , 10 years ago
Milestone: | Alpha 16 → Alpha 15 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
No sense keeping it open, before it was an indication of the game running out of memory due to memory leaks or fragmentation, but it will be seen less often now that every binary serialization isn't allocating 8+ MB of memory. We should just remember that if someone reports an error like this in the future, it is a likely indication of running out of memory.
Which map were you playing and were there AI players? How many AIs and which ones?