-
Posts
28 -
Joined
-
Last visited
-
Donations
0.00 GBP
Content Type
Profiles
Bug Tracker
Wiki
Release Notes
Forums
Downloads
Blogs
Events
Posts posted by D Q
-
-
I created a bug report in
-
My TBC server crashed under following conditions:
- log on as a warrior
-
add two bots (won't crash if I don't add bots)
- one priest, one mage
- charge into 2+ creatures
- server will crash in a second or two.
My build is based on:
commit ffcd98e4d8bfb565c72e03c724fa99bc88a0eb5a (HEAD -> master, tag: v22.03.45, origin/master, origin/HEAD) Author: Antz <billy1arm@users.noreply.github.com> Date: Wed Nov 8 22:37:51 2023 +0000 Fix Gentoo build of openSSL3.x. Thanks to @Shaorin for pointing
I can reproduce the crash very consistently.
Console:Setting lesser delay 0 -> 100 Correct --- AI Tick --- Correct T:aoe Correct T:enemy too close for spell Correct T:shadow word: pain on attacker Correct PUSH:say::aoe - 99.000000 (trigger) Correct PUSH:fade - 50.000000 (trigger) Correct PUSH:flee - 49.000000 (trigger) Correct PUSH:shadow word: pain on attacker - 11.000000 (trigger) Correct A:say::aoe - PREREQ munmap_chunk(): invalid pointer Aborted (core dumped)
world-server.log doesn't print anything after startup.
For weird reasons, the coredump was not generated. I will
But I have the crash log. -
Hmm... Maybe I am looking at the wrong path, but this doesn't look(read) right.
bag space has to be smaller than 80? possible target is empty?
bool LootAvailableTrigger::IsActive() { return AI_VALUE(bool, "has available loot") && AI_VALUE(uint8, "bag space") < 80 && (AI_VALUE2(float, "distance", "loot target") <= INTERACTION_DISTANCE || AI_VALUE(list<ObjectGuid>, "possible targets").empty()); }
-
I would like to ask the bots to collect nearby quest items that normally requires an "open"/right-click action, followed by casting bar.
I tried to follow ike3's doc, but it did not work.
https://ike3.github.io/mangosbot-docs/doc/playerbot/Looting.html
I also traced the code briefly, and looks like there's some issue to get the game object to the bot's looting list, even though I tried right clicking and cancel etc.Any idea/comment is much appreciated. I would also love to learn how the code work around this area too.
Thanks
-
Just saw this one almost 10 yrs ago:@shaorin , is this still working? What do you mean by "changed my database language to chinese"?
Sorry for bringing the decade old topic again. -
If tried the following:
- Install the translations to the DB by following the "Translation" part in
-
changed mangosd.conf
RealmZone = 16 DBC.Locale = 4
- restart mangosd
- Login again
But it did not work What did I miss?
-
I made one on OCI too(let's keep it low, or Oracle will start banning mangos lol). I worked around the memory issue using swap file. It's slow, but it works. Once it's built, I just save the binary away for next time.
-
Anyway, I got it for you from my server.
(gdb) thread apply all bt Thread 6 (Thread 0x7f77cb2a4640 (LWP 80744)): #0 0x00007f77cc5337f8 in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7f77cb2a3dd0, rem=0x0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 #1 0x00007f77cc538677 in __GI___nanosleep (req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25 #2 0x00005596168aaeef in ACE_Based::Thread::Sleep(unsigned long) () #3 0x00005596168a185a in SqlDelayThread::run() () #4 0x00005596168aaa5d in ACE_Based::Thread::ThreadTask(void*) () #5 0x00007f77cc4e2ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #6 0x00007f77cc574660 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 5 (Thread 0x7f77bbfff640 (LWP 80747)): #0 __futex_abstimed_wait_common64 (private=0, cancel=true, abstime=0x0, op=393, expected=0, futex_word=0x559619075af0) at ./nptl/futex-internal.c:57 #1 __futex_abstimed_wait_common (cancel=true, private=0, abstime=0x0, clockid=0, expected=0, futex_word=0x559619075af0) at ./nptl/futex-internal.c:87 #2 __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x559619075af0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139 #3 0x00007f77cc4e1a41 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x559619075a90, cond=0x559619075ac8) at ./nptl/pthread_cond_wait.c:503 #4 ___pthread_cond_wait (cond=0x559619075ac8, mutex=0x559619075a90) at ./nptl/pthread_cond_wait.c:627 #5 0x00005596168b84b5 in ACE_Condition<ACE_Thread_Mutex>::wait(ACE_Time_Value const*) () #6 0x00005596168b7842 in ACE_Activation_Queue::dequeue(ACE_Time_Value*) () #7 0x00005596168a9dc5 in DelayExecutor::svc() () #8 0x00005596168fa435 in ACE_Task_Base::svc_run(void*) () #9 0x0000559616915c9f in ACE_Thread_Adapter::invoke() () #10 0x00007f77cc4e2ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #11 0x00007f77cc574660 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 4 (Thread 0x7f77c898a640 (LWP 80746)): #0 __futex_abstimed_wait_common64 (private=0, cancel=true, abstime=0x0, op=393, expected=0, futex_word=0x559619075a--Type <RET> fo--Typ--Typ--Type <---Ty----Typ--Type --Ty----Ty--Type <RET> for more, q to quit, c to continue without paging-- f0) at ./nptl/futex-internal.c:57 #1 __futex_abstimed_wait_common (cancel=true, private=0, abstime=0x0, clockid=0, expected=0, futex_word=0x559619075af0) at ./nptl/futex-internal.c:87 #2 __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x559619075af0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139 #3 0x00007f77cc4e1a41 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x559619075a90, cond=0x559619075ac8) at ./nptl/pthread_cond_wait.c:503 #4 ___pthread_cond_wait (cond=0x559619075ac8, mutex=0x559619075a90) at ./nptl/pthread_cond_wait.c:627 #5 0x00005596168b84b5 in ACE_Condition<ACE_Thread_Mutex>::wait(ACE_Time_Value const*) () #6 0x00005596168b7842 in ACE_Activation_Queue::dequeue(ACE_Time_Value*) () #7 0x00005596168a9dc5 in DelayExecutor::svc() () #8 0x00005596168fa435 in ACE_Task_Base::svc_run(void*) () #9 0x0000559616915c9f in ACE_Thread_Adapter::invoke() () #10 0x00007f77cc4e2ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #11 0x00007f77cc574660 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 3 (Thread 0x7f77cc2a6640 (LWP 80738)): #0 0x00007f77cc5337f8 in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7f77cc2a5dd0, rem=0x0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 #1 0x00007f77cc538677 in __GI___nanosleep (req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25 #2 0x00005596168aaeef in ACE_Based::Thread::Sleep(unsigned long) () #3 0x00005596168a185a in SqlDelayThread::run() () #4 0x00005596168aaa5d in ACE_Based::Thread::ThreadTask(void*) () #5 0x00007f77cc4e2ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #6 0x00007f77cc574660 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 2 (Thread 0x7f77cbaa5640 (LWP 80741)): #0 0x00007f77cc5337f8 in __GI___clock_nanosleep (clock_id=clock_id@entry=0, flags=flags@entry=0, req=0x7f77cbaa4dd0, rem=0x0) at ../sysdeps/unix/sysv/linux/clock_nanosleep.c:78 #1 0x00007f77cc538677 in __GI___nanosleep (req=<optimized out>, rem=<optimized out>) at ../sysdeps/unix/sysv/linux/nanosleep.c:25 #2 0x00005596168aaeef in ACE_Based::Thread::Sleep(unsigned long) () #3 0x00005596168a185a in SqlDelayThread::run() () #4 0x00005596168aaa5d in ACE_Based::Thread::ThreadTask(void*) () #5 0x00007f77cc4e2ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #6 0x00007f77cc574660 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 Thread 1 (Thread 0x7f77cc2c2740 (LWP 80735)): #0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:74 #1 0x0000559616345e55 in RandomPlayerbotFactory::CreateRandomBotName[abi:cxx11](unsigned char) () #2 0x0000559616346257 in RandomPlayerbotFactory::CreateRandomBot(unsigned char) () #3 0x0000559616348abf in RandomPlayerbotFactory::CreateRandomBots() () #4 0x0000559616336e35 in PlayerbotAIConfig::Initialize() () #5 0x00005596162a77f0 in World::SetInitialWorldSettings() () #6 0x0000559615fc0e91 in main ()
Thread 1 should be the crashing thread.
-
you just need to load the coredump to gdb.
https://stackoverflow.com/questions/5115613/core-dump-file-analysis -
coredump and binary, compressed
My server is ubuntu 22.04My build is based on ffcd98e4d8bfb565c72e03c724fa99bc88a0eb5a
-
hmm, the coredump itself is already 200+MB. And it doesn't make sense without the mangos binary(and probably the same server environment) I am using. So do you still need the whole thing?
I mean I can run gdb on my machine to get whatever you need. -
1 hour ago, Meltie said:
@Dick Q Is it possible to post a crash log that is in debug? You can use a application called GDB in Linux to gather the details.
The backtrace I posted above was from gdb.
What other information do you need? -
By reading the code, I used a workaround by setting random bot to 0. So that we don't run into the crashing code at all. But it would be fun to have som random bots
AiPlayerbot.RandomBotAccountCount = 0
for (int accountNumber = 0; accountNumber < sPlayerbotAIConfig.randomBotAccountCount; ++accountNumber) { // ...... RandomPlayerbotFactory factory(accountId); for (uint8 cls = CLASS_WARRIOR; cls < MAX_CLASSES; ++cls) { if (cls != 10 && cls != 6) { factory.CreateRandomBot(cls); <==== crashing from here } }
-
Initializing AI Playerbot by ike3, based on the original Playerbot by blueboy Creating new random bot for class 1 Segmentation fault (core dumped)
When I enable aiplayerbot, mangod would crash at startup as above.
I can't find anything useful from world-server.log.
backtrace from the coredump
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `./mangosd'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:74 74 ../sysdeps/x86_64/multiarch/strlen-avx2.S: No such file or directory. [Current thread is 1 (Thread 0x7f77cc2c2740 (LWP 80735))] (gdb) bt #0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:74 #1 0x0000559616345e55 in RandomPlayerbotFactory::CreateRandomBotName[abi:cxx11](unsigned char) () #2 0x0000559616346257 in RandomPlayerbotFactory::CreateRandomBot(unsigned char) () #3 0x0000559616348abf in RandomPlayerbotFactory::CreateRandomBots() () #4 0x0000559616336e35 in PlayerbotAIConfig::Initialize() () #5 0x00005596162a77f0 in World::SetInitialWorldSettings() () #6 0x0000559615fc0e91 in main ()
Do we have any known bug in this area?
Thanks
-
Updated all the way to 22_1_1, and it works like charm. Thank you all for the help!
-
2 minutes ago, Dick Q said:
@PargeLenisthanks for replying, but the update patch you mention says "20 to 21", would it work?
Rel20_to_BaseRel21_Updates.7z
Oh, sorry. I unpacked it and found the right patches.
I will have a try and let you know. Thanks @PargeLenis -
@PargeLenisthanks for replying, but the update patch you mention says "20 to 21", would it work?
Rel20_to_BaseRel21_Updates.7z
-
-- Evaluate all settings SET @cCurResult := (SELECT description FROM db_version ORDER BY `version` DESC, STRUCTURE DESC, CONTENT DESC LIMIT 0,1); SET @cOldResult := (SELECT description FROM db_version WHERE `version`=@cOldVersion AND `structure`=@cOldStructure AND `content`=@cOldContent); SET @cNewResult := (SELECT description FROM db_version WHERE `version`=@cNewVersion AND `structure`=@cNewStructure AND `content`=@cNewContent); IF (@cCurResult = @cOldResult) THEN -- Does the current version match the expected version -- APPLY UPDATE
After reading the update file "Rel22_01_001_Release_22.sql", it's skipped because the current version "21_2_1" does not match the expected "21_4_1".
But how do I find the patch from "21_2_1" to "21_4_1"? The content in Rel21 doesn't look right :
ls Rel21 Rel20_to_BaseRel21_Updates readme.txt
-
2023-12-29 11:25:44 ERROR:The table `db_version` indicates that your [Realmd] database does not match the expected structure! 2023-12-29 11:25:44 ERROR: 2023-12-29 11:25:44 ERROR: [A] You have database Version: 21 2023-12-29 11:25:44 ERROR: Structure: 2 2023-12-29 11:25:44 ERROR: Content: 1 2023-12-29 11:25:44 ERROR: Description: Add_field_comments 2023-12-29 11:25:44 ERROR: 2023-12-29 11:25:44 ERROR: [B] The core needs database Version: 22 2023-12-29 11:25:44 ERROR: Structure: 1 2023-12-29 11:25:44 ERROR: Content: 1 2023-12-29 11:25:44 ERROR: Description: Release 22 2023-12-29 11:25:44 ERROR: 2023-12-29 11:25:44 ERROR:You must apply all updates after [A] to [B] to use MaNGOS with this database. 2023-12-29 11:25:44 ERROR:These updates are included in the database/Realmd/Updates folder.
I tried to apply the update, but it's "skipped"mangos@mangos:~/mangos/one/db/database/Realm/Updates/Rel22$ mysql -u mangos -pmangos mangos_auth < Rel22_01_001_Release_22.sql ===== Status ===== === Expected === ===== Found Version ===== * UPDATE SKIPPED * Rel21_04_001 - IS NOT APPLIED 21_2_1 - Add_field_comments
My "db_version"MariaDB [mangos_auth]> SELECT * FROM db_version ORDER BY VERSION DESC, structure DESC, content DESC LIMIT 0,1 -> ; +---------+-----------+---------+--------------------+------------------------------------------+ | version | structure | content | description | comment | +---------+-----------+---------+--------------------+------------------------------------------+ | 21 | 2 | 1 | Add_field_comments | Base Database from 20150409 to Rel21_2_1 | +---------+-----------+---------+--------------------+------------------------------------------+
Please feel free to comment.
All profession skills are shown as unavailable...
in Peer to Peer Technical Support
Posted
My server is TBC, based on latest master.
My character is now lv8. All the profession skills, including fishing, first aid, cooking, etc are show as unavailable to me.
Is there any known issue or did I miss anything.
Thanks