ID:109844
 
BYOND Version:479
Operating System:Linux
Web Browser:Firefox 4.0
Applies to:Dream Daemon
Status: Unverified

Thus far we've been unable to verify or reproduce this bug. Or, it has been observed but it cannot be triggered with a reliable test case. You can help us out by editing your report or adding a comment with more information.
Descriptive Problem Summary:

It doesn't happen every time, but it has happened too often to ignore.

I'm hosting multiple games, Shinoby Story Online, Dragonball Phoenix, Bleach Last Horizon.

And while it's not always the case, sometimes after rebooting the DreamDaemon, it crashes.

I have no idea why. But here's the report the log showed me for the most recent crash after rebooting Dragonball Phoenix:

Welcome BYOND! (4.0 Public Version 479.1086)
The BYOND hub reports that port 8009 is reachable.
BUG: Sequence number 6A92 expected but 2 received
BUG: Removing corrupt rsc entry 'Beam - Kamehameha.dmi'
BUG: Removing corrupt rsc entry 'kamehameha.dmi'
BUG: Removing corrupt rsc entry 'Beam.dmi'
BUG: Sequence number EA5C expected but B5 received
BUG: Removing corrupt rsc entry 'kamehameha.dmi'

*** glibc detected *** DreamDaemon: free(): invalid pointer: 0x0ede7cb0 ***
======= Backtrace: =========
/lib/libc.so.6(+0x6c501)[0x6c2501]
/lib/libc.so.6(+0x6dd70)[0x6c3d70]
/lib/libc.so.6(cfree+0x6d)[0x6c6e5d]
/usr/local/lib/libbyond.so(_Z13FreeMapHashesv+0x75)[0x311d95]
/usr/local/lib/libbyond.so(_Z16FreeServerThingsv+0x1f9)[0x31b4c9]
/usr/local/lib/libbyond.so(+0x2240e3)[0x3340e3]
/usr/local/lib/libbyond.so(_Z10LoadServerPKcS0_+0x4a)[0x33562a]
/usr/local/lib/libbyond.so(+0x225973)[0x335973]
/usr/local/lib/libbyond.so(_ZN7TimeLib11SystemAlarmEv+0x15c)[0x3e663c]
/usr/local/lib/libbyond.so(_ZN9SocketLib15WaitForSocketIOElh+0x236)[0x3ba616]
DreamDaemon[0x804a163]
/lib/libc.so.6(__libc_start_main+0xe7)[0x66cce7]
DreamDaemon(__gxx_personality_v0+0x139)[0x8049c31]
======= Memory map: ========
00110000-004a3000 r-xp 00000000 fb:00 8423312 /usr/local/byond/bin/libbyond.so
004a3000-004a4000 rw-p 00392000 fb:00 8423312 /usr/local/byond/bin/libbyond.so
004a4000-004bb000 rw-p 00000000 00:00 0
004bb000-004bd000 r-xp 00000000 fb:00 9966677 /lib/libdl-2.12.1.so
004bd000-004be000 r--p 00001000 fb:00 9966677 /lib/libdl-2.12.1.so
004be000-004bf000 rw-p 00002000 fb:00 9966677 /lib/libdl-2.12.1.so
004bf000-004c9000 r-xp 00000000 fb:00 9966683 /lib/libnss_files-2.12.1.so
004c9000-004ca000 r--p 00009000 fb:00 9966683 /lib/libnss_files-2.12.1.so
004ca000-004cb000 rw-p 0000a000 fb:00 9966683 /lib/libnss_files-2.12.1.so
004cb000-004cd000 r-xp 00000000 fb:00 9965804 /lib/libnss_mdns4_minimal.so.2
004cd000-004ce000 r--p 00001000 fb:00 9965804 /lib/libnss_mdns4_minimal.so.2
004ce000-004cf000 rw-p 00002000 fb:00 9965804 /lib/libnss_mdns4_minimal.so.2
004cf000-004d3000 r-xp 00000000 fb:00 9966682 /lib/libnss_dns-2.12.1.so
004d3000-004d4000 r--p 00004000 fb:00 9966682 /lib/libnss_dns-2.12.1.so
004d4000-004d5000 rw-p 00005000 fb:00 9966682 /lib/libnss_dns-2.12.1.so
005d1000-005f5000 r-xp 00000000 fb:00 9966678 /lib/libm-2.12.1.so
005f5000-005f6000 r--p 00023000 fb:00 9966678 /lib/libm-2.12.1.so
005f6000-005f7000 rw-p 00024000 fb:00 9966678 /lib/libm-2.12.1.so
00638000-00654000 r-xp 00000000 fb:00 9961490 /lib/ld-2.12.1.so
00654000-00655000 r--p 0001b000 fb:00 9961490 /lib/ld-2.12.1.so
00655000-00656000 rw-p 0001c000 fb:00 9961490 /lib/ld-2.12.1.so
00656000-007ad000 r-xp 00000000 fb:00 9965427 /lib/libc-2.12.1.so
007ad000-007af000 r--p 00157000 fb:00 9965427 /lib/libc-2.12.1.so
007af000-007b0000 rw-p 00159000 fb:00 9965427 /lib/libc-2.12.1.so
007b0000-007b3000 rw-p 00000000 00:00 0
0092d000-0093d000 r-xp 00000000 fb:00 9966689 /lib/libresolv-2.12.1.so
0093d000-0093e000 r--p 00010000 fb:00 9966689 /lib/libresolv-2.12.1.so
0093e000-0093f000 rw-p 00011000 fb:00 9966689 /lib/libresolv-2.12.1.so
0093f000-00941000 rw-p 00000000 00:00 0
00a3b000-00a3c000 r-xp 00000000 00:00 0 [vdso]
00c1c000-00c70000 r-xp 00000000 fb:00 8423316 /usr/local/byond/bin/libext.so
00c70000-00c71000 rw-p 00054000 fb:00 8423316 /usr/local/byond/bin/libext.so
00dfa000-00e14000 r-xp 00000000 fb:00 9961477 /lib/libgcc_s.so.1
00e14000-00e15000 r--p 00019000 fb:00 9961477 /lib/libgcc_s.so.1
00e15000-00e16000 rw-p 0001a000 fb:00 9961477 /lib/libgcc_s.so.1
00eb2000-00f91000 r-xp 00000000 fb:00 8130129 /usr/lib/libstdc++.so.6.0.14
00f91000-00f95000 r--p 000de000 fb:00 8130129 /usr/lib/libstdc++.so.6.0.14
00f95000-00f96000 rw-p 000e2000 fb:00 8130129 /usr/lib/libstdc++.so.6.0.14
00f96000-00f9d000 rw-p 00000000 00:00 0
08048000-0804d000 r-xp 00000000 fb:00 8423313 /usr/local/byond/bin/DreamDaemon
0804d000-0804e000 rw-p 00004000 fb:00 8423313 /usr/local/byond/bin/DreamDaemon
09a42000-165b7000 rw-p 00000000 00:00 0 [heap]
b7700000-b7721000 rw-p 00000000 00:00 0
b7721000-b7800000 ---p 00000000 00:00 0
b7806000-b7807000 rw-p 00000000 00:00 0
b780b000-b780f000 rw-p 00000000 00:00 0
b7811000-b7818000 rw-p 00000000 00:00 0
bff13000-bffa7000 rw-p 00000000 00:00 0 [stack]


Started it up again and it works fine.
Also, shutting down the Daemon first and then restarting it (instead of just rebooting the Daemon) seems to cause no issues.
I can see the routine where this is crashing but it seems like it shouldn't ever crash unless something has gone seriously haywire. The crash is happening where the turf map is freed up, and the only way this should be crashable is if the values in the turf map have been compromised.

A few things that would probably help:

1) Can you narrow down the game this happens with (and provide a link to the hub entry)?
2) Do you have access to the source (source can be sent in a zip to [email protected])?
3) Does the game use any dynamic map loading or resizing?

I'll have to put this in Unverified until there's a reliable test case to produce the issue.
1) The game this crash report is from is Dragonball Phoenix (I've edited the report to include the link as well).

2) I do have access to the Dragonball Phoenix source code but I do not own it, so I'll have to ask Archonex if he's okay with sending you a copy.

So I'll get back to you on that.

3) The game does not use dynamic map resizing, it does however load turfs/areas/items from savefiles when the game starts.

And thanks for your swift reply.
Unless this can be narrowed down to a more limited test case, then if I do have access to the source I'll also need to know what sequence to follow to get started (i.e. how to quickly get past any character login screen) so I can try to reproduce the issue on multiple reboots.