aboutsummaryrefslogtreecommitdiff
path: root/src/server/database
AgeCommit message (Collapse)Author
2017-03-01Core/Database: Prepared statement parameter preallocation (#18999)ariel-
- Pass prepared statement size to the helper class to prevent runtime resizing. - Rename CheckValidIndex -> AssertValidIndex - Cached prepared size on the worker pool as it's shared among all connections - Cached query data only for each connection, done lookup in map instead of possibly creating a new element - Kill the prepared statement map, and store raw sql string on the MySQLPreparedStatement class (This info is only used for logging, and there is no need of keeping a second container just for it)
2017-01-30Fixed clang segmentation fault in nopch modeShauren
(cherry picked from commit 787adc24b2d1a7a3c03ecfed57de27631359ef65)
2017-01-29Core/Server: fix duplicated inserts into tutorials table for newly created ↵ariel-
characters
2017-01-28Few small optimizations here and there (#18684)xinef1
Changes list: - Added CharacterGuidByNameContainer which contains name -> guid unordered map (updated along CharacterInfo) - Extended CharacterInfo structure with GuildId - Extended CharacterInfo structure with ArenaTeamId[3], for all possible teams (2v2, 3v3, 5v5) - Removed CHAR_SEL_GUID_BY_NAME and CHAR_SEL_CHAR_GUID_BY_NAME synchronous queries, name -> guid can be now retrieved in World::GetCharacterGuidByName - Removed CHAR_SEL_GUID_RACE_ACC_BY_NAME synchronous query, guid can be retrieved by name and rest of the data can be retrieved by guid - Removed CHAR_SEL_CHAR_LEVEL synchronous query, level can be retrieved by guid - Changed CHAR_SEL_CHARACTER_ACTIONS_SPEC to asynchronous query, action bars are now loaded asynchronously - Removed CHAR_SEL_CHARACTER_NAME_CLASS synchronous query, guid can be retrieved by name and rest of the data can be retrieved by guid - Removed CHAR_SEL_PLAYER_ARENA_TEAMS and CHAR_SEL_ARENA_TEAM_ID_BY_PLAYER_GUID synchronous queries, arena teams are now stored in CharacterInfo - Replaced synchronous db calls with CharacterInfo lookups - Removed ObjectMgr::GetPlayerGUIDByName, as it used db query - Replaced some unnecessary UpdateObjectVisibility() calls because they were either duplicated (called few lines above in other function) or it is enough to call DestroyForNearbyPlayers because object is being removed or should be invisible and DestroyForNearbyPlayers is faster - Corrected typo in Player::DestroyForPlayer, only items in slots 0 to EQUIPMENT_SLOT_END are sent to other players - Renamed Player::GetGuildIdFromDB to Player::GetGuildIdFromCharacterInfo and changed the function to use CharacterInfo structure - Renamed Player::GetArenaTeamIdFromDB to Player::GetArenaTeamIdFromCharacterInfo and changed the function to use CharacterInfo structure - Renamed Player::GetLevelFromDB to Player::GetLevelFromCharacterInfo and changed the function to use CharacterInfo structure - Removed GameEventMgr::_questToEventLinks and associated functions, eventId is now stored in Quest class under _eventIdForQuest variable - Changed some functions checking quest status to use other functions for quest status check instead of duplicating code - Removed callback from add friend, because we can get the guid from appropriate storage, no need to make db query - Removed callback from add ignore, because we can get the guid from appropriate storage, no need to make db query - Added callback to unwrap wrapped items asynchronously - Removed synchronous select in tutorials to check if we have any entries in db, if any entry exists in db, m_TutorialsChanged variable will have TUTORIALS_FLAG_LOADED_FROM_DB flag added and it is no longer necessary to query database
2017-01-25Removed debug leftoversShauren
(cherry picked from commit e8273b7b37c86afe42f962f17a5e523e70d97f7d)
2017-01-25Build fixShauren
(cherry picked from commit 0314abc26a8d17cb630c658634b5ad292ece8a88)
2017-01-25Core/DBLayer: Convert async queries to new query callbacks and remove old ↵Shauren
callback handling (cherry picked from commit 8e2634b2b49eb814b8cc425a060b2f160dbb49b7) Conflicts: src/server/bnetserver/Server/Session.cpp src/server/bnetserver/Server/Session.h src/server/database/Database/QueryCallback.cpp src/server/game/Handlers/CharacterHandler.cpp src/server/game/Handlers/SocialHandler.cpp src/server/game/Server/WorldSession.cpp src/server/game/Server/WorldSession.h src/server/game/Server/WorldSocket.cpp src/server/game/Server/WorldSocket.h src/server/game/World/World.cpp src/server/game/World/World.h
2017-01-25Core/DBLayer: Refine new query callback for chainingShauren
(cherry picked from commit 73e61fa652d1233bfff1db91fa2bca8c317c8caf)
2017-01-25Core/DBLayer: Added new async query callback apiShauren
(cherry picked from commit fcabeed7544285f3244465ccfc5337c59e63c6b0)
2017-01-25Core/Packets: updated some contactlist packetsjoschiwald
(cherry picked from commit e01bb918875f88ede211fc13ff3908e30249de33) Conflicts: src/server/game/Entities/Player/Player.cpp src/server/game/Entities/Player/Player.h src/server/game/Entities/Player/SocialMgr.cpp src/server/game/Entities/Player/SocialMgr.h src/server/game/Handlers/MiscHandler.cpp src/server/game/Server/Packets/MiscPackets.cpp src/server/game/Server/Protocol/Opcodes.cpp src/server/game/Server/Protocol/Opcodes.h src/server/game/Server/WorldSession.cpp src/server/game/Server/WorldSession.h src/server/shared/Database/Implementation/CharacterDatabase.cpp src/server/shared/Database/Implementation/CharacterDatabase.h
2017-01-15Core/Updater: Better log for fresh installationsAokromes
2017-01-06Core/Scripts: added command to move characters across accountsariel-
2017-01-02Update Copyright notice for 2017tkrokli
Happy new year!
2016-12-15Core/Pets: Use prepared statements in Pet::SavePetToDBmyran2
Very partial cherry pick (cherry picked from commit bc1a81747ae032bc2ae3681d99f5f6058d20caff)
2016-10-30Core/Auras: don't save auras casted by itemsariel-
- Drop useless field from DB (itemGuid was being saved, but never used, see Prepared Statements) - This type of auras (like Water Bucket, Precious Ribbon, etc) will be recasted on login anyways. This reverts commit 16cfd59f5b368fd1d05eeeab3afbacfccf0a6870
2016-10-07Core/Channel: revamp channel system (#17980)ariel-
* Core/Channel: change the way channels are stored and sent to client. - Fixes multiple channels per zone when using different locales - Connected clients will receive locally the name of the channel for their apropiate locale (if available) - In other cases default locale name will be sent, so as to prevent breaking channel chat for those players Closes #8411
2016-09-25Core/Auth: removed unneeded sub queryjoschiwald
2016-09-13Core/Fishing: implement retail-like fishing skill-up functionality (#17528)SnapperRy
2016-09-12Update DBUpdater.cppAokromes
2016-09-12Update DBUpdater.cppAokromes
2016-09-12Core/Updater: Clarify more 2 errorsAokromes
2016-08-27Core/Logging: delete old logs of the own realm onlyjoschiwald
(cherry picked from commit beedf737c815c1f946381904417471c42a21de76)
2016-08-18Core/Globals: delete another synch query using CharacterInfo mapariel-
2016-08-10Core/DB/Updater: English grammar corrections (#17207)Trond B Krokli
Improve English text in strings and comments in UpdateFetcher.cpp - replace incorrect text with the intended words in some output strings - corrections in the comments to point out the intention of the code (cherry picked from commit 186375d997caab33eee878a1e102f41939c7a688)
2016-08-10Server/Database: Reduce differences between 3.3.5 and 6.x branchesjackpoz
Code functionality shouldn't have been modified.
2016-08-10Server/Database: Reduce differences between 3.3.5 and 6.x branchesjackpoz
Cherry-pick 1bea52fd4649b6a1761aa157f9e74f01e19872e7 and 543bea32 to add support to TYPE_BINARY MySQL field type
2016-08-04Core\Command: remove account_muted data on account deletionForesterDev
2016-07-23Core/Updater: Clarify even more this errorAokromes
2016-07-20Update DBUpdater.cppAokromes
Because nature wins race....
2016-07-16Core/Misc: remove two synch queries and replace them with CharacterInfo cacheariel-
2016-07-02Core/Misc: Better description for a logAokromes
2016-06-23Core/Player: Add option to prevent rename during character customizationpsayafan
Closes #17420
2016-06-01Core/DB/Updater: engrish corrections in DBUpdater.cpp (#17262)Trond B Krokli
English grammar and syntax corrections in DBUpdater.cpp - string texts corrected, source code unchanged - comments improved and checked for typos
2016-05-25* DB/Graveyards: Added a comment field to describe the graveyards in ↵Aokromes
`graveyard_zone`
2016-05-10Core/Common: Move the query callback header to the database projectNaios
* Also renames the header to it's correct name QueryCallback
2016-04-28Core/Misc: Fixed warnings found by GCC 6Shauren
(cherry picked from commit 67fd3ee726cbd509e6a15f81f4780e757a78a8b5) # Conflicts: # src/server/game/Spells/Auras/SpellAuras.cpp
2016-04-23Core/Updater: Correct the config key hint of a log messageNaios
2016-04-17Core/Cryptography: Move the SHA1 calculate helper to the SHA1 headerNaios
2016-04-11Core/Common: Capsule boost process into helper functionsNaios
* For easier usage, the processes output it routed correctly to the TC logger line by line now. * Add support for asynchronous process execution and process termination. (cherry picked from commit 3497b4960ba944388d148e10084e62eee909e986)
2016-04-09Core/Misc: MSVC warning fixesShauren
(cherry picked from commit 70412e7e254a36398f101b4bfe1926c619063202)
2016-04-09Buildsystem: Initial changes to support building with vs clang toolsetShauren
(cherry picked from commit 4a3a178d7fe9d2d7e8fde2fe915cf5cec5223502)
2016-03-24Core/Database: Converted the database library to a shared library.Naios
* There is still the possibility to static link against database. (cherry picked from commit 6cfea2d8f7de3de8206a1f4cf23a6d653814afe1)
2016-03-18CMake: Use inherited dependencies in database, shared and gameNaios
2016-03-18CMake: Use inherited dependencies in common and toolsNaios
2016-03-13Core/Players: Split playerBytes fields in characters tableShauren
(cherry picked from commit 2a6f65fddcdbe074ace6cd08ab27ec73a64ffe76)
2016-03-12Core/Auth: Fixed login for accounts with accented charactersShauren
Closes #16770
2016-03-11Core/Database: Move singleton instances into compilation unitsNaios
* Fixes issues when building shared libraries (prevents gcc and clang from providing several instance) * Also instantiate the database worker pools in DatabaseEnv.cpp now. (cherry picked from commit a8fe7f6eb7195368bbb4d0256927405f5e5c6f87)
2016-03-03Core/Database: Use RAII for resource management in MySQLConnectionNaios
* Prevents double deletion of MySQLConnection after errors * The object stays valid after an error and will wait for a reconnect * Also crash the server if 5 reconnects fail * Corrects an issue where the server was crashed after one reconnect because mysql_thread_id was invoked with an invalid handle
2016-03-03Core/Database: Move DatabaseWorkerPool into it's own translation unitNaios
2016-03-03Core/Database: Use RAII instead of raw pointers for resource managementNaios
* Corrects dirty usage of vectors with array indexes * Removes _connectionCount which is now handled through the vector size * Rename magic identifier "t" to "connection"