Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Bug Reports

Development::Bug Reports Post detailed bug reports and what you would like to see next in the emu here.

Reply
 
Thread Tools Display Modes
  #1  
Old 11-23-2008, 05:51 PM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default clear_proximity

I'm having a zone crash problem that has something to do with the proximity_list being updated. I can recreate this repeatedly on my server in two different zones where perl scripts call quest::clear_proximity() and the client is updating in Client::Handle_OP_ClientUpdate() calling entity_list.ProcessMove(); Visual Studio debugger breaks at the line in EntityList::ProcessMove() NPC *d = itereator.GetData();

The perl files that do this are /qeynos/Hansl_Bigroon.pl and /thedeep/The.pl
In each case the text right before the call to quest::clear_proximity() appears on my screen and then the zone is lost. It doesn't crash for a minute or so but typed commands don't work and you can't zone or anything like that.

I have tried a source drop_system and resourced in at r198 peq db plus the svn sql since then. I don't know when it started, but it was happining on r202 and is still happening at r227.

This server is running on Windows Server 2008
There's no client side or server side logs that indicate an error.
The debugger always breaks at that same line.

What I think is happening is the QuestManager::clear_proximity() is deleting the proximity_list entry for the perl script at the same time the EntityList::ProcessMove() is iterating through the proximity_list from the call in Client::Handle_OP_ClientUpdate() and EntityList::ProcessMove() tries to access the proximity_list while it's being changed.

So maybe I missed a db change somewhere? Is there a way to fix this?
Reply With Quote
  #2  
Old 11-24-2008, 03:25 AM
AndMetal
Developer
 
Join Date: Mar 2007
Location: Ohio
Posts: 648
Default

Just a thought, but this sounds more like an large (possibly infinite?) loop hogging up the CPU cycles, which results in zone.exe not sending updates to the client, resulting in the client going linkdead, and as a result the zone shuts down because no one is left in the zone (just like big pulls + AE rampage).
__________________
GM-Impossible of 'A work in progress'
A non-legit PEQ DB server
How to create your own non-legit server

My Contributions to the Wiki
Reply With Quote
  #3  
Old 11-24-2008, 06:06 AM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

Not likely if the debugger is breaking sounds like a memory access violation to me.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 09:06 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3