Page 1 of 1

Mutex: ZoneServer::MMasterSpawnLock

Posted: Fri Oct 26, 2012 12:52 pm
by John Adams
My dev server tolerated me, Jabantiz and Xinux, zoning all over the new zones repeatedly, talking 1/2 the night away, killing ourselves and our foe... and at 6am I decide to /exit, and the zone throws an exception. Seriously?

Getting the feeling this is not really a valid exception, but a mis-placed IF or something... Jab?
05:51:35 D Packet: Unable to convert EQ opcode 0X021B (539) to an emu opcode.
05:51:50 D Zone: Client is disconnecting in ZoneServer::ClientProcess (camping = false)
05:51:50 D Zone: Sending login equipment appearance updates...
05:51:50 D Zone: Calling clients.Remove(client)...
05:51:50 D Zone: Removing client 'Guardian' (159) due to LD/Exit...
05:51:50 I Zone: Scheduling client 'Guardian' for removal.
05:51:50 D Player: Toggling Character OFFLINE!
05:51:50 D CClient: Client Disconnect...
05:51:50 D Zone: Starting zone shutdown timers...
05:52:01 D World: Removing connection...
05:52:08 M TODO: Implement map<character id <map<slot id, updatestruct> > method to update Login.
..\..\source\WorldServer\LoginServer.cpp, LoginServer::Process, 236
05:56:50 I Zone: Initiating zone shutdown of 'EasternWastes'
05:57:11 E Mutex: Possible deadlock attempt by 'ZoneServer::MMasterSpawnLock'!
05:58:04 I Zone: Completed zone shutdown of 'EasternWastes'

Re: Mutex: ZoneServer::MMasterSpawnLock

Posted: Fri Oct 26, 2012 2:12 pm
by Jabantiz
It looks like the spawn loop in the zone deadlocked when the zone was trying to shut down, no clue why it would have happened after we screwed around so long on it last night. Judging by the times for Initiating zone shutdown and zone shutdown complete I would say it is very likely the zone deadlocked but did recover. Will just have to keep an eye out for this again and see if we can find a way to reproduce it.

Re: Mutex: ZoneServer::MMasterSpawnLock

Posted: Fri Oct 26, 2012 4:01 pm
by John Adams
Pretty sure I see this mostly when it is a non-clean logoff. crash or exit.

Re: Mutex: ZoneServer::MMasterSpawnLock

Posted: Fri Oct 26, 2012 4:28 pm
by alfa
I was online when crash happend, for on time isn't me :p

Re: Mutex: ZoneServer::MMasterSpawnLock

Posted: Sun Nov 18, 2012 12:59 pm
by John Adams
Jab, not sure if this helps, but I might have found a quick way to reproduce this issue. I am on my local world with my minilogin having the opcodes for 1194 client, yet my world does not (still only has 1096 max). Created a character and habitually clicked Play and of course, get bounced because of the version incompatibility.

What I didn't expect was to see Frostfang deadlock right away. Zero spawns in zone, except for my player, which should not have even gotten into the zone due to the version incompatibility.
12:55:32 D Net : AddAuth: 1 Key: 1353268532
12:55:33 D Net : New client from ip: 127.0.0.1 port: 49442
12:55:33 D Net : Adding new client...
12:55:33 D Client : Client::Process, ProcessQuestUpdates
12:55:33 I ZoneAuth : Access Key: 1353268532, Character Name: Killer, Account ID: 1
12:55:33 D Player : Loading character for 'Killer' (char_id: 1)
12:55:33 I Zone : Loading new Zone 'FrostfangSea'
12:55:33 D Recipes : Loaded 0 recipes for player: Killer (1)
12:55:33 D Achievements: Loaded 0 player achievement updates
12:55:33 I Spawn : Loaded for zone 'FrostfangSea' (470):
0 NPC(s), 0 Object(s), 0 Widget(s)
0 Sign(s), 0 Ground Spawn(s), 0 Spawn Group(s)
0 Spawn Group Association(s), 0 Spawn Group Chance(s)
12:55:33 D Player : Loading character_details for 'Killer' (char_id: 1)
12:55:33 E World : Incompatible version: 1194 <== expected
12:55:34 I World : Removing client from ip: 127.0.0.1 port: 49442
12:55:34 E Zone : Error Processing SpawnLoop, shutting down zone 'FrostfangSea'...
12:55:35 I Zone : Initiating zone shutdown of 'FrostfangSea'
12:55:47 D World : Removing connection...
12:55:55 E Mutex : Possible deadlock attempt by 'ZoneServer::MMasterSpawnLock'!