Trinitycore: [Crash] Deleting multiple Gameobjects

Created on 14 Jul 2019  路  21Comments  路  Source: TrinityCore/TrinityCore

I encountered this problem today, I spawned 10 chests, Same ID (Chests) upon deleting 3rd and 4th , server crashed.,

To reproduce:

  1. GO ID: 190552
  2. Spawn 10 of these and try deleting them right after
  3. Server Crash on this revision

Crash Log:
https://pastebin.com/i2gxKJEc

Rev: ded18a2690063991d5440df7d3e5d526b884ec16

* System *
Windows Server 2012 Standard (Version 6.2, Build 9200)

Branch-3.3.5a HasBacktrace

Most helpful comment

Btw to reproduce you need to put the gameobject/creature on respawn timer - fresh spawns wont trigger it

All 21 comments

Is that only a part of the crashlog ?

[11:44:13] Found nearby gameobjects (distance 10.000000): 11
[11:44:35] Game Object (GUID: 166014) removed
[11:44:37] Game Object (GUID: 166020) removed
[11:44:39] Game Object (GUID: 166021) removed
[11:44:45] Game Object (GUID: 166017) removed
[11:44:54] Game Object (GUID: 166015) removed
[11:44:56] Game Object (GUID: 166023) removed
[11:45:18] Game Object (GUID: 166018) removed
[11:45:28] Game Object (GUID: 166019) removed

Improved log eed92676858c9c10b1bd570894d562b21e72a905

@RR2739-VCN could you update to https://github.com/TrinityCore/TrinityCore/commit/eed92676858c9c10b1bd570894d562b21e72a905 , build in Debug, reproduce the issue and post the full crashlog ?

Surely can @jackpoz

@Shauren @jackpoz
Was able to reproduce again using the same revision but now with a full crash log, assertion failure upon deleting an object.

https://gofile.io/?c=aBXAVS

Related to to this maybe ? 4423ca99e7f8c38ff83196134038a7790313ed7a

That logs is from https://github.com/TrinityCore/TrinityCore/commit/7f63c504d5cf but we asked to update to https://github.com/TrinityCore/TrinityCore/commit/eed92676858c9c10b1bd570894d562b21e72a905 at least.

It also uses RelWithDebInfo but we asked to build in Debug. As you have How To Reproduce steps, it should be easy to reproduce the issue in a test realm built in Debug.

i will be running a latest rev in debug mode tomorrow after work. Hope it will shed some light as to why this started happening.

still cannot reproduce on head:
https://i.imgur.com/2DGw3a0.jpg

It only happens in certain maps. I couldn't reproduce in Kalimdor or Eastern Kingdoms and Outlands. This only happens on maps that console has an error on. At times console reads Map cannot be loaded and if i spawn objects on that map, delete, crash. Mostly happens in Shattrath City or Makers Perch. Exactly 15 days ago this was not an issue cosidering im building cities and areas already for 3 weeks. Deleting a Gameobject was never an issue before, if i can remember that was never an issue on TC.

could you post a crashlog built in Debug in those maps then ?

https://i.imgur.com/ieiBonD.jpg still cannot reproduce

plz supply .server debug and .gps coords of where you get crash.

http://s000.tinyupload.com/index.php?file_id=59047918054033468796
confirm crash after removing object, I added ad gobject in game, rebooted server, then try delete, crash

Assertion message:
c:\users\user\desktop\tranw\source\src\server\database\database\mysqlconnection.cpp:445 in MySQLConnection::GetPreparedStatement ASSERTION FAILED:
index < m_stmts.size()
Tried to access invalid prepared statement index 218 (max index 73) on database trworld, connection type: asynchronous

@transcend-dev could you build in Debug and reproduce the issue ?

Ok, I know exactly what is going on here, no need for any more crash logs

https://github.com/TrinityCore/TrinityCore/blob/b9756de7e5b8147569faebb31caad91d3d0cd7dd/src/server/game/Entities/GameObject/GameObject.cpp#L1124

This line adds CharacterDatabase prepared statements to a transaction started on WorldDatabase

Creature::DeleteFromDB does the same btw

This commit caused it 84b7b2e08ea55575cbe62d795383d4a5341ffd4d

@Treeston could you take a look at this crash ?

I'll think of some way to prevent this at compile time, just like I did for DatabaseWorkerPool::GetPreparedStatement

Btw to reproduce you need to put the gameobject/creature on respawn timer - fresh spawns wont trigger it

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Tatara902 picture Tatara902  路  3Comments

Lopfest picture Lopfest  路  3Comments

chilito picture chilito  路  3Comments

funjoker picture funjoker  路  3Comments

Rochet2 picture Rochet2  路  3Comments