fdb_
-
Posts
77 -
Joined
-
Last visited
Never -
Donations
0.00 GBP
Content Type
Profiles
Bug Tracker
Wiki
Release Notes
Forums
Downloads
Blogs
Events
Posts posted by fdb_
-
-
voodoo should work too.
-
Perhaps a kind of thread manager to act as a mutex keeper/watchdog to restart only the frozen thread.
-
Note: Sometime you can face a linking error at the end of the compilation, it is often due to the existing mangos libs in the install dir. The solution is to move or delete the existing libs located in /home/user/server/lib.
If this not the source of the issue, I have no clues.
-
Nice and sweet as hell,
Cheers
-
Hello,
Here is a little cosmetic patch to set the default arena rating and the default arena personal rating inside the mangos.conf.
diff --git a/src/game/ArenaTeam.cpp b/src/game/ArenaTeam.cpp index ed4ce5b..db5de09 100644 --- a/src/game/ArenaTeam.cpp +++ b/src/game/ArenaTeam.cpp @@ -36,10 +36,13 @@ ArenaTeam::ArenaTeam() m_stats.games_week = 0; m_stats.games_season = 0; m_stats.rank = 0; +/* if (sWorld.getConfig(CONFIG_UINT32_ARENA_SEASON_ID) >= 6) m_stats.rating = 0; else m_stats.rating = 1500; +*/ + m_stats.rating = sWorld.getConfig(CONFIG_UINT32_ARENA_STARTRATING); m_stats.wins_week = 0; m_stats.wins_season = 0; } @@ -136,10 +139,13 @@ bool ArenaTeam::AddMember(const uint64& PlayerGuid) newmember.wins_week = 0; if (sWorld.getConfig(CONFIG_UINT32_ARENA_SEASON_ID) >= 6) { +/* if (m_stats.rating < 1000) newmember.personal_rating = 0; else newmember.personal_rating = 1000; +*/ + newmember.personal_rating = sWorld.getConfig(CONFIG_UINT32_ARENA_STARTPERSONALRATING); } else { diff --git a/src/game/World.cpp b/src/game/World.cpp index b1605d5..c20924c 100644 --- a/src/game/World.cpp +++ b/src/game/World.cpp @@ -721,6 +721,8 @@ void World::LoadConfigSettings(bool reload) setConfig(CONFIG_BOOL_ARENA_QUEUE_ANNOUNCER_JOIN, "Arena.QueueAnnouncer.Join", false); setConfig(CONFIG_BOOL_ARENA_QUEUE_ANNOUNCER_EXIT, "Arena.QueueAnnouncer.Exit", false); setConfig(CONFIG_UINT32_ARENA_SEASON_ID, "Arena.ArenaSeason.ID", 1); + setConfig(CONFIG_UINT32_ARENA_STARTRATING, "Arena.StartRating", 1500); + setConfig(CONFIG_UINT32_ARENA_STARTPERSONALRATING, "Arena.StartPersonalRating", 1500); setConfig(CONFIG_BOOL_ARENA_SEASON_IN_PROGRESS, "Arena.ArenaSeason.InProgress", true); setConfig(CONFIG_BOOL_OFFHAND_CHECK_AT_TALENTS_RESET, "OffhandCheckAtTalentsReset", false); diff --git a/src/game/World.h b/src/game/World.h index 6711ff6..d28f168 100644 --- a/src/game/World.h +++ b/src/game/World.h @@ -173,6 +173,8 @@ enum eConfigUint32Values CONFIG_UINT32_TIMERBAR_BREATH_MAX, CONFIG_UINT32_TIMERBAR_FIRE_GMLEVEL, CONFIG_UINT32_TIMERBAR_FIRE_MAX, + CONFIG_UINT32_ARENA_STARTRATING, + CONFIG_UINT32_ARENA_STARTPERSONALRATING, CONFIG_UINT32_VALUE_COUNT }; diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in index c52602b..2671542 100644 --- a/src/mangosd/mangosd.conf.dist.in +++ b/src/mangosd/mangosd.conf.dist.in @@ -1317,6 +1317,14 @@ BattleGround.PremadeGroupWaitForMatch = 1800000 # Default: 1 (active) # 0 (finished) # +# Arena.StartRating +# Default Rating at team creation +# Default: 1500 +# +# Arena.StartPersonalRating +# Default Personal Rating at team creation (Arena.ArenaSeason.ID should be >= 6 to use this parameter) +# Default: 1500 +# ################################################################################################################### Arena.MaxRatingDifference = 150 @@ -1327,6 +1335,8 @@ Arena.QueueAnnouncer.Join = 0 Arena.QueueAnnouncer.Exit = 0 Arena.ArenaSeason.ID = 1 Arena.ArenaSeason.InProgress = 1 +Arena.StartRating = 600 +Arena.StartPersonalRating = 600 ################################################################################################################### # NETWORK CONFIG
Dunno if it can be included in git coz it is not very blizz like.
Have fun.
-
Here is a pretty huge back trace of a segfault: http://paste.ubuntu.com/389280/
The server has been compiled without any optimization and with maximum debugging options.
Seems UnloadGrid and Instance involved in it.
I am not able to reproduce it, and it happens randomly on few to high populated server.
Any kind of feedback will be very appreciated.
Mangos version: 9439
SD2: 1596
DB: YTDB 533
-
Did you try to delete the existing libs installed by the mangos "make install" ?
"rm /..../mangos/lib"
then try to recompile and install again.
-
I confirm.
Perhaps due to the DB I do not know.
-
All fixes related to the Waypoints and MovGens seem to reduce the number of crashes drastically. Good work guys!!!
Here is another dump ( http://pastebin.mozilla.org/705378 ).
I do not think it is linked to the Waypoint but there is a reference to TargetedMovementGeneratorMedium, so perhaps there is another missing check.
By the way, it seems that the following patch fix the problem:
diff --git a/src/game/CellImpl.h b/src/game/CellImpl.h index 2c8048d..67c5ae5 100644 --- a/src/game/CellImpl.h +++ b/src/game/CellImpl.h @@ -182,6 +182,10 @@ Cell::Visit(const CellPair &standing_cell, TypeContainerVisitor<T, CONTAINER> &v if(radius > 333.0f) radius = 333.0f; + // fdb avoid null ptr being processed + if (&obj == NULL) + return; + //lets calculate object coord offsets from cell borders. CellArea area = Cell::CalculateCellArea(obj, radius); //if radius fits inside standing cell
Vladimir, do you think it is a good way to handle this kind of crashes ?
-
.Rev 9465. Clean core x64 + SD2 1606
Crash 5-30 min
any ideas how to resolve this?
yea, now i am suffering too : ( 10h uptime and bang started to crash every hour or less. Opcodes are variant so it is probably not fault of anything except packet hadling. Shared path to crash is World::Update() => World::UpdateSessions() => WorldSession::Update() and finishes at ByteBuffer.h
Yes this issue is very annoying.
I am facing many crashes related to this.
-
Still one crash related to WaypointMoveGen, using cherrypicked 9461
-
The fix seems to work fine, but I still have some crashes with WaypointGen. Very few crashes I admit, one or two per day.
Here is a sample of the backtrace:
http://pastebin.mozilla.org/705126
Perhaps triggered inside an instance I dunno.
-
I will try , but i can run still the server if gonna do that?
You cannot run the server if you delete the libs.
But if it is running, it should be safe to keep it running without the libs. But take care, in case of a crash, the server cannot be restarted because the libs will be missing. So it is better to move the full install path where you have all your server files and recreate /home/user/server/lib and compile and install.
You can also configure and install in /home/user/server2 to avoid this problem. Etc...
-
I always get this error, i follow the How-to use custom ACE and TBB libs guid and it still dont work
Really need help
I use ACE 5.7.6
Try to remove the current libs located in the install dir of the server.
mv ~/server ~/server_old
mkdir -p ~/server/lib
And restart the compilation from scratch.
Sometime existing libs from an older mangos install can cause this problem, so you have to delete them.
HowTo updated.
-
update please patch!
This patch works for me:
--- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -2188,6 +2188,33 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx) m_caster->CastCustomSpell(m_caster, 45470, &bp, NULL, NULL, true); return; } + switch(m_spellInfo->Id) + { + // Death Grip + case 49560: + case 49576: + { + if (!unitTarget || !m_caster) + return; + + float x = m_caster->GetPositionX(); + float y = m_caster->GetPositionY(); + float z = m_caster->GetPositionZ()+1; + float orientation = unitTarget->GetOrientation(); + + m_caster->CastSpell(unitTarget,51399,true,NULL); + + if(unitTarget->GetTypeId() != TYPEID_PLAYER) + { + unitTarget->GetMap()->CreatureRelocation((Creature*)unitTarget,x,y,z,orientation); + ((Creature*)unitTarget)->SendMonsterMove(x, y, z, SPLINETYPE_NORMAL, SPLINEFLAG_UNKNOWN11, 1); + } + else + unitTarget->NearTeleportTo(x,y,z,orientation,false); + + return; + } + } break; } }
-
How-to use custom ACE and TBB libs without screwing the one already installed on your system.
>> Unix specific / Only tested on linux <<
Well many peeps have problems compiling MaNGOS with the last ACE or with an another version of TBB libs.
They mostly use an hacky way to dupe the configure tool (homemade links in the /usr/lib etc...), in fact it works but it also screws the system libs and some errors can happen when you update your system.
Moreover if some of the installed binaries need the old versions of the libs you can face some unwanted behaviour of the programs that require those libs.
Here is a way to manage ACE and TBB localy without screwing your system neither modifying it.
Requirements:
- * working with a non-privileged account (non-root)
* pkg-config installed
Notes:
- * This is not a cut & paste How-To
First here is a brief description of the directories used in this guide.
~/src (main working sources directory, mangos and other libs) ~/opt (install dir for libs) ~/server (install dir of the mangos server)
Go in ~/src directory and get all your sources code:
git clone mangos... wget [url]http://..../ACE.tgz[/url] wget [url]http://..../tbb.tgz[/url]
ACE Compilation/Installation:
cd ~/src tar xfz ACE.tgz cd ACE_wrappers mkdir objdir && cd objdir ../configure --disable-ace-tests --disable-ace-examples --prefix=~/opt make make install
At this time ACE libs are installed in your ~/opt/lib directory and ACE includes are located in ~/opt/includes
The systems lib files stay untouched.
Note: You can also use the same tip for the openssl libs
TBB Compilation:
cd ~/src tar xfz tbb.tgz cd tbb_directory make
Now TBB is fully compiled inside 2 directories, one for the release and the other for the debug use.
The TBB binaries are located in ~/src/tbb/build/linux_?????_release/ or ~/src/tbb/build/linux_?????_release/
Inside the build directories of TBB you can find the tbbvars.sh script, thanks god it will definitively help.
Evironment settings:
Edit your ~/.profile file with your fav editor and add these lines at the end:
export PKG_CONFIG_PATH=$HOME/opt/lib/pkgconfig export LIBRARY_PATH=$HOME/opt/lib export LD_LIBRARY_PATH=$HOME/opt/lib export CPATH=$HOME/opt/include source $HOME/src/tbb/build/linux_????_release/tbbvars.sh
Notes:
- As it is not a cut & paste how-to you have to change the tbb paths.
- Do not forget to logout and login again to activate these changes (or juste write this command "source ~/.profile")
MaNGOS Compilation/Installation:
cd ~/src/mangos autoreconf stuff scriptdev2 stuff mkdir objdir && cd objdir ../configure --prefix=/home/user/server --sysconfdir=/home/user/server/etc --enable-cli --enable-ra --datadir=/home/user/server/data --disable-builtin-ace make -jNBCORE
Note: Sometime you can face a linking error at the end of the compilation, it is often due to the existing mangos libs in the install dir. The solution is to move or delete the existing libs located in /home/user/server/lib.
Note: I had some problems during the installation, the make install target did not create the lib sub directory inside the install dir, the easiest way to avoid this issue is to manually create it.
mkdir -p /home/user/server/lib && make install
Now you should have your newly compiled MaNGOS with the local ACE and TBB libs.
Note for those who use a restarter inside a screen, do not forget to source the .profile file or the mangos binaries will have some problems finding the local libs.
- * working with a non-privileged account (non-root)
-
I'm not agree.. with the correct configuration, you can do everything, i have more than 2k and i no have any problem.
PD: In this days i update the post, with more interesting scripts. Chears.
Of course with the right config you can mitigate the impact.
Perhaps you could give us some hints on the proper config so everyone can tune their servers to avoid some weird issues ?
-
No, it's not. You could implement a text template-based POX or RESTful interface and a socket server implementing a subset of HTTP......
True, I was considering using an external libs being mandatory to ease the dev.
By the way, both methods can be used (not at the same time of course). Your idea to use POX & REST is very good to produce small footprint and for the efficiency, but perhaps heavier than using a lib.
Just relax, we're protected by the power of OpenSSL. No enemy can break through our encrypted channels, so why bother limiting our web services to localhost?I did not say neither mean restricting the WS to localhost, of course it can be bind to localhost if the realmd process runs on the same server as the webserver, but it is not limited to that behavior (in case you use multiple servers web/realm/world...).
-
I can't see how this is related to the ongoing discussion about sha_pass_hash; you could build such a service in both cases. However, I think it would be an overkill: A feature wich requires quite some work, creates an additional library dependency and is rarely used.
Furthermore, as DasBlub already mentioned, it requires some considerations about securing that web-service.
I understand this point of view.
Regarding the additional libs, yes it is mandatory in that case. But I do not think it is a problem. such kind of heavy project usualy use many libs, one more wont hurt (at least it is what I think). I understand also that some investigations should be done on the cross-compatibility between the libs if needed.
Regarding the security, it is not less important than the security included in the realmd but we have to consider that the web services are for admin tools and not called from the external network. For example, the admin can config the fw of his servers to only allow the WS being accessed from the webserver. Moreover the WS can be configured with user/pwd access, HTTPS, and can also use the server/client cert.pem file to fully authenticate each call.
-
Arrai, yes using triggers is interesting and is also a good alternative.
Can you tell us what do you think about the alternative using Web-Services to allow external auth ? (I am currently trying to make a PoC to expose some informations from the realmd tell me if you are interested in it).
-
imho the config file option is the best. if its not used, it can simply stay empty. if someone needs the field, he could still turn the config option on.
(and to be honest, in my database i have even reimplemented cleartext passwords... they are never used, but get updated whenever a password is changed. good as reference if some ppl forget their password, really)
I agree that the config param is a good solution, but in that case there is no removal of the sha_pass field in the DB.
Avoiding duplicate data is also one of the main aim and use of databases, so entirely removing the column could be a good enhancement to have a well formed DB.
-
Here is another point of view regarding the issue about the sha pwd.
Get rid of the sha pwd field and implement an additional feature in the realmd process. The additional feature would be a web service to let external apps to authenticate. The web service can be SOAP / XML-RPC or any other wide used technology.
Config params can be:
soap_srv = 0|1
soap_port = 8080
soap_user = mangos
soap_pwd = sognam
Using this or some similar ways to handle remote auth can be very interesting because of you can expose more than an authentication service but uptime / players ingame / account creation-deletion and many more...
There are some nice libs to handle the job:
- gSOAP http://gsoap2.sourceforge.net/
- XMLRPC-C http://xmlrpc-c.sourceforge.net/
Both are very stable, widely used, still maintained from years and portable.
But gSOAP provides some tools to generate the code skeleton (read the "getting started" web page on their website), it could be perhaps easier to use it instead of XMLRPC-C.
-
I advise everyone to take care about those kind of scripts.
In fact those scripts have a tight link with the DB's and the connection to servers, I think that exposing the scripts to the public is a threat to your servers.
Most of websites wont notice the impact but on some servers that host a huge amount of players the numbers of the requests made by the visitors can lead to a DoS.
Moreover that can help some malicious peeps to take your server down flooding the stats pages.
So the best solution is to use these scripts in some crontab task to populate the static stats web pages on your server. No more the impact on your servers on the web requests.
Depending on the stats you can run (via crontab or any other schedulers) the task every 1min to 5mins (eg: 1min for the server status and 5mins for the population, etc.).
-
Mangos: 8352
UDB
Core compiled with -O0
ACE with -O2
Core was generated by `./mangos-worldd'.
Program terminated with signal 7, Bus error.
[New process 21798]
[New process 21801]
[New process 21802]
[New process 21758]
[New process 21761]
[New process 21760]
[New process 21762]
[New process 21800]
[New process 21799]
#0 0x00007f5813fbcdcc in ?? () from /lib/libc.so.6
#0 0x00007f5813fbcdcc in ?? () from /lib/libc.so.6
No symbol table info available.
#1 0x00007f5813fbea78 in malloc () from /lib/libc.so.6
No symbol table info available.
#2 0x00007f58147fac4b in operator new () from /usr/lib/libstdc++.so.6
No symbol table info available.
#3 0x0000000000aae090 in WorldSocket::SendPacket (this=0x7f57fe326c60,
pct=@0x42e2b780) at ../../../src/game/WorldSocket.cpp:206
mb = (class ACE_Message_Block *) 0x773de3
Guard = {lock_ = 0x7f57fe326f80, owner_ = 0}
header = {size = 29, header = "p<C4>m<A6>"}
#4 0x0000000000aa8e1e in WorldSession::SendPacket (this=0x3498d40,
packet=0x42e2b780) at ../../../src/game/WorldSession.cpp:134
cur_time = 1251482494
sendPacketCount = 75259752
sendPacketBytes = 2709302518
firstTime = 1251480429
lastTime = 1251482469
sendLastPacketCount = 1055379
sendLastPacketBytes = 38336403
#5 0x0000000000afd0fb in MaNGOS::MessageDeliverer::Visit (this=0x42e2b680,
m=@0x7f57f8c76b08) at ../../../src/game/GridNotifiers.cpp:156
session = (WorldSession *) 0x3498d40
iter = {_Ptr = 0x7f57f4d17330}
#6 0x00000000008c6b54 in VisitorHelper<MaNGOS::MessageDeliverer, Player> (
v=@0x42e2b680, c=@0x7f57f8c76b08)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:64
No locals.
#7 0x00000000008c6b73 in VisitorHelper<MaNGOS::MessageDeliverer, Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > (v=@0x42e2b680, c=@0x7f57f8c76b08)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:70
No locals.
#8 0x00000000008c6bab in VisitorHelper<MaNGOS::MessageDeliverer, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > (v=@0x42e2b680,
c=@0x7f57f8c76b08)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:94
No locals.
#9 0x00000000008c6bce in TypeContainerVisitor<MaNGOS::MessageDeliverer, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > >::Visit (t
his=0x42e2b670, c=@0x7f57f8c76b08)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:105
No locals.
#10 0x00000000008c6bf4 in Grid<Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > >, MaNGOS::SingleThreaded<Player> >::Visit<MaNGOS::MessageDeliverer> (this=0x7f57f8c76a40, visitor=@0x42e2b670)
at ../../../src/game/../framework/GameSystem/Grid.h:101
No locals.
#11 0x00000000008c6c6b in NGrid<4u, Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > >, MaNGOS::SingleThreaded<Player> >::Visit<MaNGOS::MessageDeliverer, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > (this=0x7f57f8c75f00, x=@0x42e2b55c, y=@0x42e2b558,
visitor=@0x42e2b670)
at ../../../src/game/../framework/GameSystem/NGrid.h:128
No locals.
#12 0x00000000008caa26 in Map::Visit<RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex>, MaNGOS::MessageDeliverer, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > > (this=0x13d20d0, cell=@0x42e2b5b0,
visitor=@0x42e2b670) at ../../../src/game/Map.h:608
x = 34
y = 23
cell_x = 1
cell_y = 3
#13 0x00000000008cace2 in Cell::Visit<RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex>, MaNGOS::MessageDeliverer, TypeMapContainer<TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > > > > (this=0x42e2b6a0, l=@0x42e2b660,
visitor=@0x42e2b670, m=@0x13d20d0) at ../../../src/game/CellImpl.h:126
cell_pair = {x_coord = 137, y_coord = 95}
r_zone = {data = {Part = {grid_x = 34, grid_y = 23, cell_x = 1,
cell_y = 3, nocreate = 1, reserved = 0}, All = 1250786}}
lock = {i_cell = @0x42e2b5c0, i_cellPair = @0x42e2b5d0}
y = 95
x = 137
standing_cell = (const CellPair &) @0x42e2b6b0: {x_coord = 137,
y_coord = 94}
district = 31
begin_cell = {x_coord = 136, y_coord = 93}
end_cell = {x_coord = 138, y_coord = 95}
__PRETTY_FUNCTION__ = "void Cell::Visit(const CellLock<LOCK_TYPE>&, TypeContainerVisitor<T, CONTAINER>&, Map&) const [with LOCK_TYPE = RGuard<ACE_RW_Thread_Mutex, ACE_Thread_Mutex>, T = MaNGOS::MessageDeliverer, CONTAINER ="...
#14 0x00000000008b0b4a in Map::MessageBroadcast (this=0x13d20d0,
player=0x7f57fe3b9260, msg=0x42e2b780, to_self=true)
at ../../../src/game/Map.cpp:494
p = {x_coord = 137, y_coord = 94}
cell = {data = {Part = {grid_x = 34, grid_y = 23, cell_x = 1,
cell_y = 2, nocreate = 1, reserved = 31}, All = 66196962}}
post_man = {i_player = @0x7f57fe3b9260, i_message = 0x42e2b780,
i_toSelf = true}
message = {i_visitor = @0x42e2b680}
cell_lock = {i_cell = @0x42e2b6a0, i_cellPair = @0x42e2b6b0}
#15 0x0000000000986c30 in Player::SendMessageToSet (this=0x7f57fe3b9260,
data=0x42e2b780, self=true) at ../../../src/game/Player.cpp:5690
_map = (class Map *) 0x13d20d0
#16 0x0000000000a616d3 in Unit::SendPeriodicAuraLog (this=0x7f57fe3b9260,
pInfo=0x42e2b910) at ../../../src/game/Unit.cpp:4425
aura = (class Aura *) 0x7f57f024e9e0
mod = (Modifier *) 0x7f57f024e9e8
data = {<ByteBuffer> = {static DEFAULT_SIZE = 4096, _rpos = 0,
_wpos = 27,
_storage = {<std::_Vector_base<unsigned char, std::allocator<unsigned char> >> = {
_M_impl = {<std::allocator<unsigned char>> = {<__gnu_cxx::new_allocator<unsigned char>> = {<No data fields>}, <No data fields>},
_M_start = 0x7f57d292a9e0 "\\003\\022\\001\\003\\022\\001k@",
_M_finish = 0x7f57d292a9fb "",
_M_end_of_storage = 0x7f57d292a9fe ""}}, <No data fields>}},
m_opcode = 590}
#17 0x00000000009e4bc9 in Aura::PeriodicTick (this=0x7f57f024e9e0)
at ../../../src/game/SpellAuras.cpp:6344
amount = 1
pdamage = 330
isCrit = false
spellProto = (const SpellEntry *) 0x0
pCaster = (class Unit *) 0x7f57fe3b9260
pInfo = {aura = 0x7f57f024e9e0, damage = 330, absorb = 0, resist = 0,
overDamage = 0, multiplier = 0, critical = false}
gain = 0
#18 0x00000000009e6ea7 in Aura::Update (this=0x7f57f024e9e0, diff=526)
at ../../../src/game/SpellAuras.cpp:654
No locals.
#19 0x0000000000a85408 in Aura::UpdateAura (this=0x7f57f024e9e0, diff=526)
at ../../../src/game/SpellAuras.h:309
No locals.
#20 0x0000000000a80f42 in Unit::_UpdateSpells (this=0x7f57fe3b9260, time=526)
at ../../../src/game/Unit.cpp:3015
i_aura = (class Aura *) 0x7f57f024e9e0
#21 0x0000000000a81a9e in Unit::Update (this=0x7f57fe3b9260, p_time=526)
at ../../../src/game/Unit.cpp:193
No locals.
#22 0x00000000009a295f in Player::Update (this=0x7f57fe3b9260, p_time=526)
at ../../../src/game/Player.cpp:1061
now = 1122155872
pet = (class Pet *) 0x8b6f2f
#23 0x00000000008b44ea in Map::Update (this=0x13d20d0, t_diff=@0x42e2c00c)
at ../../../src/game/Map.cpp:578
plr = (class Player *) 0x7f57fe3b9260
updater = {i_timeDiff = 526}
grid_object_update = {i_visitor = @0x42e2bed0}
world_object_update = {i_visitor = @0x42e2bed0}
__PRETTY_FUNCTION__ = "virtual void Map::Update(const uint32&)"
#24 0x00000000008cc9d1 in MapManager::Update (this=0x7f58016df5a0, diff=526)
at ../../../src/game/MapManager.cpp:256
iter = {<std::tr1::__detail::_Hashtable_iterator_base<std::Pair<const unsigned int, Map*>, false>> = {_M_cur_node = 0x1306380,
_M_cur_bucket = 0x7f57d083f508}, <No data fields>}
#25 0x0000000000a9dff2 in World::Update (this=0xffae00, diff=526)
at ../../../src/game/World.cpp:1591
autobroadcaston = 1
#26 0x000000000076afd4 in WorldRunnable::run (this=0x17ec320)
at ../../../src/mangosd/WorldRunnable.cpp:65
diff = 526
realCurrTime = 1647010984
realPrevTime = 1647010458
prevSleepTime = 0
#27 0x0000000000b5cff6 in ACE_Based::Thread::ThreadTask (param=0x17ec320)
at ../../../src/shared/Threading.cpp:182
_task = (class ACE_Based::Runnable *) 0x17ec320
#28 0x00007f5814a46fc7 in start_thread () from /lib/libpthread.so.0
No symbol table info available.
#29 0x00007f58140165ad in clone () from /lib/libc.so.6
No symbol table info available.
#30 0x0000000000000000 in ?? ()
No symbol table info available.
[fixed] Pdump Command
in OldBug reports
Posted
pdump seems broken since the commit that has made the data field external (now inside another table).
Still have to check it deeper but afaik it is broken.