[b24] long hang when entering a zone/town
Posted: Sat Apr 09, 2011 10:15 pm
Many people have reported an extremely long hang (minutes) when entering a town or zone. During this time, there is no display update, and the CPU is 100% used. It is ***NOT*** related to background saving. If a background save is occurring at the same time, it can aggravate the hang, but it is not the CAUSE of the hang, and the hang happens even without any save occurring.
I got one of these when re-entering Old Forest (4) for the second time. It's a level with one of the new huge vaults, and I previously had to scamper off because I was level 8 and the trolls guarding the entrance were level 31. I returned at char level 16, took one step, and then the game hung for several minutes.
I attached gdb to the ./t-engine process and got a backtrace:
I got one of these when re-entering Old Forest (4) for the second time. It's a level with one of the new huge vaults, and I previously had to scamper off because I was level 8 and the trolls guarding the entrance were level 31. I returned at char level 16, took one step, and then the game hung for several minutes.
I attached gdb to the ./t-engine process and got a backtrace:
Code: Select all
(gdb) bt
#0 0x080b7bea in luaD_precall (L=0x9c40da0, func=0xfb36af0, nresults=1)
at ../src/lua/ldo.c:267
#1 0x080ad706 in luaV_execute (L=0x9c40da0, nexeccalls=8)
at ../src/lua/lvm.c:587
#2 0x080b818c in luaD_call (L=0x9c40da0, func=0xfb36988, nResults=1)
at ../src/lua/ldo.c:377
#3 0x080b29ae in f_call (L=0x9c40da0, ud=0xbfc3907c) at ../src/lua/lapi.c:800
#4 0x080b73ca in luaD_rawrunprotected (L=0x9c40da0, f=0x80b2984 <f_call>,
ud=0xbfc3907c) at ../src/lua/ldo.c:116
#5 0x080b84dc in luaD_pcall (L=0x9c40da0, func=0x80b2984 <f_call>,
u=0xbfc3907c, old_top=24, ef=12) at ../src/lua/ldo.c:463
#6 0x080b2a48 in lua_pcall (L=0x9c40da0, nargs=1, nresults=1, errfunc=1)
at ../src/lua/lapi.c:821
#7 0x0804f297 in docall (L=0x9c40da0, narg=1, nret=1) at ../src/main.c:183
#8 0x0804fafc in on_tick () at ../src/main.c:357
#9 0x08051378 in main (argc=2, argv=0xbfc39224) at ../src/main.c:985