Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

[server] world carsh 0131 #14805

Closed
kissingers opened this issue Jan 31, 2023 · 10 comments · Fixed by #14812
Closed

[server] world carsh 0131 #14805

kissingers opened this issue Jan 31, 2023 · 10 comments · Fixed by #14812
Labels
Priority-Critical Server-breaking bugs. Crashes or Exploits

Comments

@kissingers
Copy link
Contributor

Current Behaviour

.go c 88276
Go inside the channel, and the server crash.

Because here can't visit https://gist.github.com , so I have to upload the zip and paste part of the log.

gdb.txt.zip

Thread 8 "worldserver" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffb37ff700 (LWP 711264)]
SmartAI::IsSummonedBy (this=, summoner=0x0) at /root/acore/src/server/game/AI/SmartScripts/SmartAI.cpp:883
883 GetScript()->ProcessEventsFor(SMART_EVENT_JUST_SUMMONED, summoner->ToUnit(), 0, 0, false, nullptr, summoner->ToGameObject());
#0 SmartAI::IsSummonedBy (this=, summoner=0x0) at /root/acore/src/server/game/AI/SmartScripts/SmartAI.cpp:883
#1 0x0000000000c617ba in Map::SummonCreature (this=0x7fffacd557c0, entry=, pos=..., properties=, duration=, summoner=0x0, spellId=0, vehId=0, visibleBySummonerOnly=) at /root/acore/src/server/game/Entities/Object/Object.cpp:2227
#2 0x00000000008e4687 in instance_mechanar::instance_mechanar_InstanceMapScript::Update (this=0x7fffab78adc0, diff=) at /root/acore/src/server/scripts/Outland/TempestKeep/Mechanar/instance_mechanar.cpp:123
#3 0x0000000000f43dcd in MapUpdateRequest::call (this=0x7fffada96fe0) at /root/acore/src/server/game/Maps/MapUpdater.cpp:44
#4 0x0000000000f43778 in MapUpdater::WorkerThread (this=0x1b82e00 MapMgr::instance()::instance+216) at /root/acore/src/server/game/Maps/MapUpdater.cpp:156
#5 0x00007ffff7821ed0 in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff7944ea7 in start_thread (arg=) at pthread_create.c:477
#7 0x00007ffff751ca2f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
#0 SmartAI::IsSummonedBy (this=, summoner=0x0) at /root/acore/src/server/game/AI/SmartScripts/SmartAI.cpp:883

Expected Blizzlike Behaviour

N/A

Source

No response

Steps to reproduce the problem

N/A

Extra Notes

No response

AC rev. hash/commit

AzerothCore rev. 69b2fbc+ 2023-01-29 15:14:19 +0000 (HEAD branch) (Unix, RelWithDebInfo, Static)
Using SSL version: OpenSSL 1.1.1n 15 Mar 2022 (library: OpenSSL 1.1.1n 15 Mar 2022)
Using Boost version: 1.74.0
Using MySQL version: 100518
Using CMake version: 3.18.4
Compiled on: Linux 5.15.64-1-pve
Worldserver listening connections on port 54345
Realmlist (Realm Id: 1) configured in port 34345
VMAPs status: Enabled. LineOfSight: 1, getHeight: 1, indoorCheck: 1
MMAPs status: Enabled
maps directory located in /root/wow/bin/maps. Total size: 291014339 bytes
vmaps directory located in /root/wow/bin/vmaps. Total size: 658130553 bytes
mmaps directory located in /root/wow/bin/mmaps. Total size: 2192911264 bytes
Using zhCN DBC Locale as default. All available DBC locales: zhCN
Using World DB: ACDB 335.8-dev
LoginDatabase queue size: 0
CharacterDatabase queue size: 0
WorldDatabase queue size: 0

Operating system

debian 11 x64

Custom changes or Modules

List enable modules:

  • mod-anticheat
  • mod-bg-reward
  • mod-cfbg
  • mod-eluna
  • mod-multi-client-check
  • mod-npc-beastmaster
  • mod-pvp-titles
  • mod-server-auto-shutdown
@kissingers
Copy link
Contributor Author

Maybe cased by this patch:
#14789

883:
GetScript()->ProcessEventsFor(SMART_EVENT_JUST_SUMMONED, summoner->ToUnit(), 0, 0, false, nullptr, summoner->ToGameObject());

@heyitsbench
Copy link
Contributor

heyitsbench commented Jan 31, 2023

Here's the gist. CC: @Nyeriah

@kissingers
Copy link
Contributor Author

Here's the gist. CC: @Nyeriah

At China the https://gist.github.com is be filtered and can't open.

@heyitsbench
Copy link
Contributor

At China the https://gist.github.com is be filtered and can't open.

I understand that, but many people (including the people that correct these issues) will not download crash log txts, I re-up them to Gist if the author does not.

@Nyeriah
Copy link
Member

Nyeriah commented Jan 31, 2023

Try #14811

@kissingers
Copy link
Contributor Author

Try #14811

Still crash.

gdb1.txt.zip

AzerothCore rev. f567c2b+ 2023-01-31 06:20:20 -0300 (pr-14811 branch) (Unix, RelWithDebInfo, Static)
Using SSL version: OpenSSL 1.1.1n 15 Mar 2022 (library: OpenSSL 1.1.1n 15 Mar 2022)
Using Boost version: 1.74.0
Using MySQL version: 100518
Using CMake version: 3.18.4
Compiled on: Linux
Worldserver listening connections on port 54346
Realmlist (Realm Id: 2) configured in port 54346
VMAPs status: Enabled. LineOfSight: 1, getHeight: 1, indoorCheck: 1
MMAPs status: Enabled
maps directory located in /root/wow/bin/maps. Total size: 291014339 bytes
vmaps directory located in /root/wow/bin/vmaps. Total size: 658130553 bytes
mmaps directory located in /root/wow/bin/mmaps. Total size: 2192911264 bytes
Using zhCN DBC Locale as default. All available DBC locales: zhCN
Using World DB: ACDB 335.8-dev
LoginDatabase queue size: 0
CharacterDatabase queue size: 0
WorldDatabase queue size: 0

List enable modules:

  • mod-anticheat
  • mod-bg-reward
  • mod-cfbg
  • mod-eluna
  • mod-multi-client-check
  • mod-npc-beastmaster
  • mod-pvp-titles
  • mod-save-inventory
  • mod-server-auto-shutdown

@Nyeriah
Copy link
Member

Nyeriah commented Jan 31, 2023

I can’t open zip files sorry. Gotta isolate the crash and find out what’s crashing it. By the looks of it seems like it’s a timed action list in mechanar spawning stuff.

@kissingers
Copy link
Contributor Author

kissingers commented Jan 31, 2023

gdb1.txt

Does the txt can open ?
It seems the same as before the pr-14811

@AnchyDev
Copy link
Contributor

AnchyDev commented Jan 31, 2023

possible null reference here maybe?

void TempSummon::InitSummon()
{
    Unit* owner = GetSummonerUnit();
    if (owner)
    {
        if (owner->GetTypeId() == TYPEID_UNIT && owner->ToCreature()->IsAIEnabled)
            owner->ToCreature()->AI()->JustSummoned(this);
    }

    // Xinef: Allow to call this hook when npc is summoned by gameobject, in this case pass this as summoner to avoid possible null checks
    if (IsAIEnabled)
        AI()->IsSummonedBy(owner); // <-------- here
}

@Nyeriah
Copy link
Member

Nyeriah commented Jan 31, 2023

possible null reference here maybe?

void TempSummon::InitSummon()
{
    Unit* owner = GetSummonerUnit();
    if (owner)
    {
        if (owner->GetTypeId() == TYPEID_UNIT && owner->ToCreature()->IsAIEnabled)
            owner->ToCreature()->AI()->JustSummoned(this);
    }

    // Xinef: Allow to call this hook when npc is summoned by gameobject, in this case pass this as summoner to avoid possible null checks
    if (IsAIEnabled)
        AI()->IsSummonedBy(owner); // <-------- here
}

Please PR it

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Priority-Critical Server-breaking bugs. Crashes or Exploits
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants