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 12-24-2006, 11:11 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default Appears to be an issue with memory.

I've left my server running for a week straight now and left the task manager up to see the memory/processor usage..

after a fresh boot up it uses about 250 megs of memory with no users conected...

after a week... with all the same zones running, and nothing changed on the server... we're sitting at 850 megs of memory being used with no one connected...

so it would seem somewhere in the code that memory isnt being freed once it is no longer used.

the only events that have been occuring are logins, character creation, zoning, and normal game play... so somewhere in the code for that there might be a problem.

I wish i had more details but I cant find anything in the log files of significance.
Reply With Quote
  #2  
Old 12-24-2006, 11:41 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

Have you merged any databases together?
Reply With Quote
  #3  
Old 12-26-2006, 02:26 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

update: as of right now the server is eating 1.08 gigs of memory with no one on the server.

i am using your database angelox :p

only thing that's different is i've added most of the missing doors to pok.

EDIT:
actually i think this might be a problem with mysql or something. i just checked the footprints for world.exe and zone.exe...

world.exe : 1,588k
zone.exe : 540k - 42,940k depending on the zone.

the 42,940 is the tutorial with 2 users connected to it at the moment.

Last edited by Aerewen; 12-26-2006 at 10:33 AM..
Reply With Quote
  #4  
Old 12-26-2006, 04:45 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

what id numbers did you give the doors you added?
Reply With Quote
  #5  
Old 12-26-2006, 05:37 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

i dont know off the top of my head, but their id followed the numbering scheme for zoneid * 1000

so for pok they are between 189000 and 189999
Reply With Quote
  #6  
Old 12-26-2006, 05:48 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

ok i've been doing some debugging tests with starting/restarting the server...

it loads all the zones properly and initiates the same 29 mysql connections that were there when the memory usage was quadroupled... after a complete reboot of the server i was sitting at 327megs of memory used... much much lower than the 1.8 gigs it was occupying before shut down. so this eliminates the possibility of mysql using that memory.

also this might be an issue with a memory leak since the task manager is showing the usage of world.exe and the zone.exe files to be under 48 megs each. most under 2 megs with the active zones (people connected) sitting at over 20 megs of memory.

somewhere in sharedmem or the world/zone connection, character creation, or maybe even quest functions... we are not freeing resources and/or leaking memory.

once i shut down the server binaries the memory usage drops back to 0 so this is definitely an issue with the server files.
Reply With Quote
  #7  
Old 12-26-2006, 05:59 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

That could be your problem; there's an issue with memory and loading stuff; on some tables that load into memory, eqemu loads in the gaps too - anotherwords if your doors id end at 22449 and you start a new door at 189000, then it alocates memory for 166,551 more un needed "spots". I'm not sure if doors are included, but from your problem, it seems so.
I had a big situation at one time with this and almost cost me all my work and would have had lost it all. I figured out how to re-number everything and was back in the ball game again.

here's the solution parts;
http://www.eqemulator.net/forums/sho...455#post125455
http://www.eqemulator.net/forums/sho...462#post125462

Simply put, you have to renumber them to match what you have.
Make sure you didn't do anything else like that. too.
Reply With Quote
  #8  
Old 12-26-2006, 06:11 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

ah actually i just pulled up my doors table and i numbered them setting NULL for id so it auto incremented properly...

so that's definitely not the problem :p

but what i'm seeing on the server machine is:

footprints on the processes tab don't change.
memory usage on the Performance page goes up the longer the server runs.
-only seems to increase when people have connected, created a character, or done something actively on the server

so if the footprints arent changing, but memory use on the machine is, and the server is the only app running... the only possible explanation i can see is a memory leak
Reply With Quote
  #9  
Old 12-26-2006, 06:19 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

What version EqEmu are you using? quest globals is broken since .933, could be related to that?
try remember what other changes you made, you have a way to revert to the original db. just to make sure?
Reply With Quote
  #10  
Old 12-26-2006, 06:25 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

im using version 934 but quest globals are working just fine...

in fact i used them in a number of quests in the tutorial and they work perfectly...

as a programmer tho i wrote the quests as such

quest::delglobal('myglobal');
quest::setglobal(etc etc);

to insure that i was in fact removing the old one before changing the value of it since if there was a bug in the setglobal function as far as updating goes... it wouldnt matter :p
Reply With Quote
  #11  
Old 12-27-2006, 05:52 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

Just to add my 2cp, I ran a server on Windows Server 2003 (Std) that had 40 static and 10 dynamic zones running for weeks. I never saw excessive RAM usage like you are describing. The only time I saw a real problem was with CPU utilization when I turned on mlog stuff (causes zone.exe to hit 99% and stay there). This was a while ago, though. I can set up my Windows server again with some newer binaries and see if it happens like you describe.
Reply With Quote
  #12  
Old 12-27-2006, 07:00 AM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

Quote:
Originally Posted by Aerewen
im using version 934 but quest globals are working just fine...

in fact i used them in a number of quests in the tutorial and they work perfectly...

as a programmer tho i wrote the quests as such

quest::delglobal('myglobal');
quest::setglobal(etc etc);

to insure that i was in fact removing the old one before changing the value of it since if there was a bug in the setglobal function as far as updating goes... it wouldnt matter :p
This is not the way I use quest globals, I use all their features. You could probably get away with making and deleting only.
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 06:22 AM.


 

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