aboutsummaryrefslogtreecommitdiff
path: root/src/server/database
AgeCommit message (Collapse)Author
2025-02-01Core/Misc: Reduce code differences between branchesShauren
2024-10-05Core/Creatures: Implement StringId for Creatures, a custom identifier to ↵Seyden
make finding specific creatures in script easier (#28500) Allows targeting specific spawns without hardcoding guids or find a bunch of different creatures with a single search Co-authored-by: Shauren <shauren.trinity@gmail.com> (cherry picked from commit 61c51b76c00d932a9180bc6781a244dc18375ef7)
2024-10-03Core/Players: Prevent creation of characters with duplicate namesShauren
Closes #30299 (cherry picked from commit 49ab2bbe3883749594fe92a752e1d618c625d1b6)
2024-07-14Core/DBLayer: Add field metadata getters to query result classesShauren
(cherry picked from commit d4998bd04a27237aba635401d5aff0d7aafa12e5)
2024-06-27Core/Players: Add level restrictions for faction changes (#30057)CraftedRO
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2024-04-25Core/Players: Fixed crash when deleting a character that has a C.O.D. mailShauren
2024-04-22Core/Misc: Support boost 1.85Shauren
(cherry picked from commit cfa838df5de5a36f6ecef5211e9a3ea8e3774d1b)
2024-04-10Core/DBLayer: Support retrieving DATE/DATETIME/TIMESTAMP column values ↵Shauren
directly without casting in sql (cherry picked from commit 404bb5b3c21b445ae21fbbfcfd7f51d255e07c39)
2024-02-16Core/DBUpdater: Changed autoupdater created databases to use utf8mb4 instead ↵Shauren
of utf8mb3 (cherry picked from commit 65e787d18be898532363fea3f8847fa4d7f21192)
2023-12-02Core/Calendar: Implement different timezone support for ingame calendarShauren
Closes #8390 Closes #29427 (cherry picked from commit b888b1b09f71a8b8b4a9d45c804a1f164fb65ac3)
2023-08-15Core/Misc: Replace std::abort with our ABORT macroShauren
* libmysql is not a well behaved library on windows, it installs its own SIGABRT handler every time a new connection is opened, overriding our own (cherry picked from commit 09dea76fb5ede974d6765d40985b033db3fba6a3)
2023-08-15Core/DBLayer: Relaxed restrictions on which Field class member function can ↵Shauren
be used to access column value from "strict match" to "must not truncate" (cherry picked from commit eadafb0347d606e5e3e660d21227aa15378bdb21)
2023-08-15Core/Misc: Replace string to int conversion functions from Common.h with ↵Shauren
c++17 std::from_chars based ones Trinity::StringTo (cherry picked from commit 3260b94dd627b7b0c7114f94bb97d108b005af3e)
2023-08-15Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard ↵Shauren
compatible api) (cherry picked from commit d791afae1dfcfaf592326f787755ca32d629e4d3)
2023-06-13Core/Players: Fix inactive reward quests on faction change (#29073)Gildor
* Fix query order * Quest with AllowableRace 0 shouldn't be inactive on faction change
2023-03-11Core/Players: Remove player from group on faction change if two side ↵Gildor
interaction group is not allowed. (#28835)
2023-02-05DB: Convert databases to utf8mb4Shauren
2022-06-23Fixed MariaDB build the easy way for the client version check (#28039)daMaex
depending on https://jira.mariadb.org/browse/CONC-509
2022-06-14MariaDB support for Ubuntu 22.04 (#28031)daMaex
2022-01-30Core/DBUpdater: Apply each sql update file in a separate transactionShauren
(cherry picked from commit b79a91039bba12d62e43806d8a20ad76107ac5d7)
2022-01-22Core/DBLayer: Fixed false positive msvc analysis warningShauren
(cherry picked from commit 6ce56e8137133f003fa42277d10c3ad03b8996e2)
2021-11-20Core/DBUpdater: Fixed db auto updater for mysql 8 when ssl connections are ↵kvolk2git
enabled (#27298)
2021-08-27Core/DB: Improve MySQL version check messages (#26866)Giacomo Pozzoni
* Core/DB: Improve MySQL version check messages * Make it more clear that any version above the required one is supported * Implement feedback
2021-08-19Don't count character pending deletion towards character per account limit ↵Kelno
(#26837) * Don't count character pending deletion towards character per account limit * Never show more than 10 characters char enum * Use constants
2021-08-18Core/DB: Updated missing check (#26834)Aokromes
* Core/DB: Updated missing check TrinityCore does not support MySQL versions below 5.7, please update your MySQL server
2021-07-24Core/DBLayer: Add QueueSize() method (#26733)Giacomo Pozzoni
* Core/DBLayer: Add QueueSize() method Add QueueSize() method to database objects (Login, Character and World) that returns how many tasks are queued. Include the queue size of the 3 databases in ".server debug" command * Make the code less threadsafe * Send data to InfluxDB * Update grafana dashboard
2021-07-18[Exploit/Dupe] Container item (#26689)robinsch
* Core/Item: Fixed possible dupe with container items containing non unique non stackable items * Fixed build * Update sql script and related base structure Co-authored-by: jackpoz <giacomopoz@gmail.com>
2021-06-06Core/Players: Add PlayerExtraFlags for tracking race change, and raf level ↵Shauren
grant usage
2021-01-22Core/Creature: Add new db field InteractionPauseTimer (#25880)Giacomo Pozzoni
* Core/Creature: Add new db field InteractionPauseTimer Add new db field InteractionPauseTimer to allow to define different interaction pause timers for each creature (the previous system was a global setting in worldserver.conf Creature.MovingStopTimeForPlayer) * Set all columns in creature_template_movement as optional (can be NULL, default NULL). Fill only the columns that should override the default C++ value * Use the InteractionPauseTimer value throughout the code instead of Creature.MovingStopTimeForPlayer * Handle InteractionPauseTimer set to 0 as "don't stop at all" * Implement InteractionPauseTimer in creature_movement_override creature_movement_override allows NULL values, in which case the values from creature_template_movement will be used for those columns that are NULL, falling back to default C++ values if creature_template_movement has NULL values too (or no rows for the creature) * Read default InteractionPauseTimer from worldserver.conf * Rename 2021_99_99_99_world.sql to 2021_01_22_00_world.sql
2021-01-03Core: whitespace cleanup, reduce double blank line to single (#25795)Kargatum
* Core/Misc: fix double empty line * worldserver.conf
2020-10-24Core/DBLayer: Fixed memory leaks with existing SQLQueryHolder uses and ↵Shauren
eliminated the possibilty of adding more in future (replaced manual memory management with smart pointers)
2020-09-27Core/Mail: Replaced blocking db query in mail sending with async versionShauren
2020-09-27Core/Auction House: Eliminate blocking db queries for account permissions ↵Shauren
when expiring auctions that have offline bidders
2020-09-201eca51b follow-up, nuke `command`.`permission` from orbit; it was only ↵Treeston
duplicating data already stored in the core.
2020-09-19Core/SAI: Add orientation and delay columns to waypoints table (#25472)Giacomo Pozzoni
* Core/SAI: Add orientation and delay columns to waypoints table * Rename 2020_99_99_99_world.sql to 2020_09_19_00_world.sql
2020-09-13Core/Characters: Replace 2 database statements with 1jackpoz
Replace DELETE + INSERT with REPLACE when updating realmcharacters table
2020-09-07Scripts/Commands: .character command conversionTreeston
2020-09-06Core/Authserver: Removal of sha_pass_hash, compatibility fields, and ↵Treeston
everything that uses them (PR #25156)
2020-09-05Core/Arena: Fix Arena.ArenaStartPersonalRating setting not having effect if ↵jackpoz
the player didn't do any arena match before next server restart Ref #16609
2020-08-28Core/Common: Tokenizer -> Trinity::Tokenize (PR: #25327)Treeston
2020-08-20Core/Misc: Remove NULLShauren
2020-08-16Core/Pets: Pet management refactoring (#25191)Shauren
* Core/Pets: Pet management refactoring * Preload basic pet data on character login with async query * Load additional pet data (declined names/auras/spells/cooldowns) using async query after we are sure pet loading will succeed * Remove all select queries related to pet stable/unstable * Remove all silent pet deletions except explicit UI-triggered abandons * Fixed displaying stable master content when current pet is not summoned * Allow to stable/swap unsummoned current pet Closes #3610 Closes #21266
2020-08-07Core/Updater: Fix detection of the mysql binary when a directory is given as ↵Carbenium
path This ensures that we never pass a directory path StartProcess which results in a crash. Closes #25216
2020-08-03Core/DB: Split `accounts`.`session_key` into `session_key_auth` (3.3.5) and ↵Treeston
`session_key_bnet` (master), so the branches will no longer break each other's realm switching.
2020-08-03Core/Authserver: Validate length of session key field after ↵Shauren
bfb041246f5c7c499ff365b38a281b0784f0bdb7
2020-08-02Core/Authserver: Re-organize the `accounts` table (PR #25135)Treeston
- no longer use sha_pass_hash for anything else core-side (.account, SOAP, RA) - salt/verifier/session_key are now binary - old s/v/sha_pass_hash fields kept around for backwards compatibility - sha_pass_hash is still updated (for now), s/v are not - sha_pass_hash is only read if s/v have been manually changed - SRP6 b now uses the full 32 bytes of randomness (instead of randomly only using 19)
2020-07-31Core/DBLayer: Add nicer api for SQLQueryHoldersShauren
2020-07-30Log sync db queries in World::Update() loop (#25174)Giacomo Pozzoni
* Core/Misc: Log sync queries on critical path * Fix build * Rename * Fix warning * Fix no-pch * Change WarnAboutSyncQueries() to be header-only
2020-07-30Core/Mail: Load mails at login instead of on demand when queried by packets ↵Shauren
(logging in always sends one of the packets that cause mail loading anyway)
2020-07-30Core/Mail: Refactor mail loading to execute 2 database queries instead of ↵Shauren
1+mails.size()