SQL code faulty somewhere...
Somewhere there is a bug in our SQL code for updating DK's in Zero. It is passing parameters and apparently should not be. I haven't dug into this yet but it happens once in a while and brings the server completely down. I will look into it after I do my first PR for the quest text corrections if nobody else has before me.
[code]
GameEvent 61 "Stormwind City - Stockades Jail Break" removed.
Next game event check in 1200 seconds.
Map::GetHitPosition vmaps corrects gained with static objects! new dest coords are X:-10585.604492 Y:-1194.846802 Z:28.749500
Map::GetHitPosition vmaps corrects gained with static objects! new dest coords are X:-10585.529297 Y:-1196.285278 Z:28.749500
Map::GetHitPosition vmaps corrects gained with static objects! new dest coords are X:-10585.487305 Y:-1195.507568 Z:28.749500
Map::GetHitPosition vmaps corrects gained with static objects! new dest coords are X:-10585.888672 Y:-1194.150635 Z:28.749500
Map::GetHitPosition vmaps corrects gained with static objects! new dest coords are X:-10585.835938 Y:-1192.843262 Z:28.749500
GameEvent 61 "Stormwind City - Stockades Jail Break" started.
Next game event check in 600 seconds.
SQL ERROR: wrong amount of parameters (2 instead of 0)
SQL ERROR: statement: UPDATE characters SET stored_dishonorable_kills = stored_dishonorable_kills + %u WHERE guid = %u
/usr/src/zero/server/src/shared/Database/SqlPreparedStatement.cpp:68: Error: Assertion in Execute failed: false
Stack Trace:
/home/username/zero/bin/mangosd(_ZN9ObjectMgr15FlushRankPointsEj+0x27d) [0xaa9a93]
/home/username/zero/bin/mangosd(_ZN5World22ServerMaintenanceStartEv+0x68) [0xd638a2]
/home/username/zero/bin/mangosd(_ZN5World6UpdateEj+0x378) [0xd622d6]
/home/username/zero/bin/mangosd(_ZN13WorldRunnable3runEv+0x64) [0xa395a4]
/home/username/zero/bin/mangosd(_ZN9ACE_Based6Thread10ThreadTaskEPv+0x37) [0xeb4e51]
/usr/lib/libACE-6.0.3.so(_ZN21ACE_OS_Thread_Adapter6invokeEv+0xa6) [0x7ffff7745636]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x6b50) [0x7ffff5edab50]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7ffff5c2495d]
mangosd: /usr/src/zero/server/src/shared/Database/SqlPreparedStatement.cpp:68: bool SqlStatement::Execute(): Assertion `"false" && 0' failed.
Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffefa75700 (LWP 2214)]
0x00007ffff5b7b165 in raise () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) backtrace
#0 0x00007ffff5b7b165 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff5b7e3e0 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2 0x00007ffff5b74311 in __assert_fail ()
from /lib/x86_64-linux-gnu/libc.so.6
#3 0x0000000000e99ce4 in SqlStatement::Execute (this=0x7fffefa74d20)
at /usr/src/zero/server/src/shared/Database/SqlPreparedStatement.cpp:68
#4 0x0000000000acb254 in SqlStatement::PExecute
at /usr/src/zero/server/src/shared/Database/SqlPreparedStatement.h:512
#5 0x0000000000aa9a93 in ObjectMgr::FlushRankPoints (this=0x162e4f0,
dateTop=42322)
at /usr/src/zero/server/src/game/Object/ObjectMgr.cpp:2760
#6 0x0000000000d638a2 in World::ServerMaintenanceStart (this=0x162d8c0)
at /usr/src/zero/server/src/game/WorldHandlers/World.cpp:1965
#7 0x0000000000d622d6 in World::Update (this=0x162d8c0, diff=51)
at /usr/src/zero/server/src/game/WorldHandlers/World.cpp:1554
#8 0x0000000000a395a4 in WorldRunnable::run (this=0x69e17d0)
at /usr/src/zero/server/src/mangosd/WorldRunnable.cpp:70
#9 0x0000000000eb4e51 in ACE_Based::Thread::ThreadTask (param=0x69e17d0)
at /usr/src/zero/server/src/shared/Threading/Threading.cpp:197
#10 0x00007ffff7745636 in ACE_OS_Thread_Adapter::invoke() ()
from /usr/lib/libACE-6.0.3.so
#11 0x00007ffff5edab50 in start_thread ()
from /lib/x86_64-linux-gnu/libpthread.so.0
#12 0x00007ffff5c2495d in clone () from /lib/x86_64-linux-gnu/libc.so.6
#13 0x0000000000000000 in ?? ()
(gdb)
[/code]
This seems to happen randomly though, not regularly. I had earned at least one DK on each of my characters a week ago to see if it would happen after the first time. It did not until last night while I was asleep and my server was empty. The only fix is to truncate the honor table. The server will no longer start after this crash.
Recommended Comments
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now