Commit Graph

61 Commits

Author SHA1 Message Date
Venugh
cab508b4c8 Convert a Execute to a PreparedStatement. 2011-12-27 00:56:42 +01:00
leak
e646dbb3cd Core/DBLayer: Convert PExecute() queries to prepared statements No. 2 2011-12-27 00:29:48 +01:00
leak
ef17c05dec Core/DBLayer: Convert PExecute() queries to prepared statements No. 1 2011-12-25 18:13:21 +01:00
leak
64a2a29506 Core/DBLayer: Convert Execute() queries to prepared statements 2011-12-25 02:22:10 +01:00
leak
08bd2f1a54 Core/DBLayer: Convert callback queries to prepared statements No. 3 2011-12-25 01:27:44 +01:00
leak
e1afd79b1e Core/DBLayer: Convert callback queries to prepared statements #2 2011-12-20 09:12:43 +01:00
leak
7052fbf5cc Core/DBLayer: Convert callback queries to prepared statements 2011-12-18 20:56:38 +01:00
Machiavelli
72675d55d8 Core/DBLayer: Use prepared statements in Player::SaveToDB. Also split the function up between an INSERT part (new character creation) and UPDATE part (existing character). 2011-11-25 15:14:00 +01:00
Machiavelli
fe8cb75bf1 Core/DBLayer: Make database interaction after create character packet completely asynchronous. This is more performant and fixes a DoS loophole and possible data desynchronisation caused by spamming this packet.
Closes #584
Closes #2089
2011-06-22 14:22:08 +02:00
Shauren
e1483329e0 Core/Mailsystem: Optimized returning and deleting old mails, will no longer take minutes when starting using old character db 2011-06-08 18:55:21 +02:00
Shauren
352de4b688 Core/Guilds: Use blocking queries at guild loading to ensure invalid data is removed before processing, removed prepared statements in loading guilds 2011-05-07 21:03:05 +02:00
MrSmite
a92038feaf Core/AuctionHouse: Delete expired auctions at startup. 2011-05-03 08:32:57 -04:00
Shauren
b7353f38b0 Core/World: Fixed realm character count queries getting lost 2011-04-25 13:31:02 +02:00
Azazel
c36846d78a Core/GM System: rename columns of gm_surveys, gm_subsurveys, gm_tickets and lag_reports tables to lowerCamel, move queries to prepared statements and refactor the code of TicketMgr. 2011-04-19 14:04:18 +06:00
Azazel
3993b73925 Core/CharDB cleanup: change creature_respawn and gameobject_respawn column names to lowerCamel, rename instance column to instanceId and move all queries to these tables to prepared statements.
Fix import error in character_database.sql.
2011-04-13 17:02:06 +06:00
Azazel
5357b1ba77 Core/CharDB Cleanup: alter corpse table making column names lowerCamel and move all queries to prepared statements.
NOTICE: column can be named `guid` only if it represents character guid. All other guids will be renamed to reflect their purpose (like corpseGuid in this specific case)
2011-04-11 14:39:00 +06:00
leak
7935c2f5c2 Core/Arena: Move personalRating to arena_team_member 2011-04-08 21:14:30 +02:00
Azazel
9f1cc4407a Core/CharDB Cleanup: alter character_homebind table making column names lowerCamel and move all queries to prepared statements. 2011-04-08 17:04:51 +06:00
Azazel
37a6fe2ae7 Core/CharDB Cleanup: alter character_battleground_data table making column names lowerCamel and move all queries to prepared statements. 2011-04-08 11:28:10 +06:00
Azazel
4db04b63dd Core/DBLayer: make use of return result of Connection::Open method and allow core to output all the errors in prepared statements instead of aborting on first error. 2011-04-07 15:30:38 +06:00
leak
ae3ab32ea5 Core/Arenas: Refactor arena code and db layout 2011-04-05 21:54:28 +02:00
leak
90a3fee232 Core/GameEventMgr: Reduce memory waste caused by gaps in game_event entry IDs 2011-03-18 00:11:12 +01:00
Azazel
3973d1b454 CharDB Schema/Cleanup: cleanup channels table:
* rename columns (remove m_ prefix and convert to lowerCamel case);
* rename prepared statements to conform to standards (there is no CLEAN statement).
2011-03-11 17:18:17 +06:00
leak
709c395421 Core/Groups: Forgotten changes from group id recycling reimplementation, also cleanup queries should be sync (and due to their one time execution have no need to be prepared statements) 2011-03-01 01:42:18 +01:00
Azazel
0c8f1c7b5b Core/Misc: rename some prepared statements to conform to naming standards (there are no CLEAN statements, there are DEL ones) 2011-02-25 00:46:26 +06:00
Azazel
bcd7e45e12 CharDB Schema/Cleanup: cleanup character_tutorial table:
* rename table to account_tutorial, because it holds account specific data;
* rename column account to accountId;
* introduce prepared statements for table.
2011-02-25 00:45:57 +06:00
Azazel
20ab3e4bda CharDB Schema/Cleanup: cleanup account_data and character_account_data tables:
* rename column account to accountId;
* introduce prepared statements for both tables.
2011-02-25 00:44:33 +06:00
Shauren
c2b0bcbd6c Core/Instances: Implemented DungeonEncounter.dbc for creating completed encounters mask to use in packets
Core/Dungeon Finder: Implemented new way of giving random dungeon rewards, linked to DungeonEncounter.dbc
2011-02-03 22:20:40 +01:00
leak
41d0c5571a Core/Entities: Avoid unique key violations during character inventory saving for newly created items 2011-01-26 17:20:21 +01:00
leak
57f85ab7da Core/DBLayer: Replace prepared statement arrays with a map to avoid asynchronous indexes at query logging or error output
- Add values to prepared statement query log messages
- Killed a bit Engrish and trailing white whitespaces
2011-01-26 00:41:55 +01:00
leak
180b739483 Core/Entities: Avoid unique key violations during character inventory saving
(It only works "<Machiavelli> because I saideth so")
2011-01-25 18:42:17 +01:00
Shauren
e7dbc783cf Reverted unintended change from previous revision 2011-01-24 11:24:31 +01:00
Shauren
464837077a Core/Instances: Implemented hourly instance limit: players are limited to entering 5 instances per hour (account wide limit) 2011-01-24 11:20:30 +01:00
Machiavelli
cb5a943f10 Core/DBLayer: CHAR_DEL_AUCTION should be defined as asynchronous. Fixes a crash caused by assertion failure.
("Could not fetch prepared statement 54 on database `characters`, connection type: asynchronous.")
2011-01-09 13:30:14 +01:00
Machiavelli
c4cac049b4 Core/DBLayer: Define prepared statements in an array per database instead of explicit calls to MySQL::PrepareStatement. Now the core will show the raw query (without bound arguments) in related log entries instead of PreparedStatement id: X on database Y. 2011-01-08 19:07:13 +01:00
Machiavelli
957c69de83 Update copyright note for 2011.
Happy new year.
2011-01-01 15:01:13 +01:00
linencloth
b150172521 Core/QuestStatus:
- Separate rewarded quests from active quests, and store them in a new table to reduce database size
- Drop the no longer needed `rewarded` column from character_queststatus for smaller table size
- Prevent filling the database with dropped quests
  - Delete useless records
- Implement queststatus save "queues" instead of states
- Minor optimizations

WARNING: Backup your database!

--HG--
branch : trunk
2010-12-26 04:16:18 +01:00
Xanadu
cfa26522ad Core: Fixed occasional wrong order of async operations at respawn time saving. Closes issue #5239.
DB schema: Sorted out a discrepancy in respawn time column format.

--HG--
branch : trunk
2010-12-23 05:49:23 +01:00
Machiavelli
a093408360 Core/Player: Convert _SaveAuras to prepared statement format
--HG--
branch : trunk
2010-12-18 23:25:03 +01:00
Machiavelli
1cdeb4d057 Core/Player: Change equipmentset saving to use prepared statements.
Update issue #4550
Please try to re-reproduce

--HG--
branch : trunk
2010-12-17 17:29:16 +01:00
azazel
b39b8fdd0d DB Schema/Characters: removed columns auctionhouse.item_template, character_inventory.item_template, guild_bank_item.item_entry and mail_items.item_template and created item_instance.itemEntry column instead of them.
As a side effect moved related queries to prepared statements.
As one more side effect fixed not shown and lost mail items in returned expired mail (patch by Quriq14).

--HG--
branch : trunk
2010-12-15 14:08:12 +06:00
Machiavelli
d5f5fa59ab Add missing declarations as of recent merge
--HG--
branch : trunk
2010-12-13 17:34:27 +01:00
Machiavelli
533f27e732 Core: Fix non-PCH build (sorry)
--HG--
branch : trunk
2010-12-04 23:14:37 +01:00
click
bc098658c6 Core/Chat: Configure automatic owner declaration for custom chat channels (patch by leak)
Closes issue 4974.

--HG--
branch : trunk
2010-12-02 03:54:52 +01:00
click
5cd3904059 Core/DBLayer: Move tables reserved_name, gameobject_respawn and creature_respawn from WORLD database to CHARACTER database as it's content is realm-specific and should be preserved (thanks to leak for the cleanup)
*** TO PRESERVE (COPY) THE DATA CONTAINED IN THE OLD TABLES, YOU MUST FOLLOW THE FOLLOWING SQL-RECIPE (REPLACE DATABASENAMES WHERE NEEDED!) ***

-- Move creature_respawn from world to characters db
INSERT INTO `characters`.`creature_respawn` (`guid`, `respawntime`, `instance`)
SELECT `guid, `respawntime` `instance` * FROM `world`.`creature_respawn`;
-- Remove creature_respawn table from world db
DROP TABLE `world`.`creature_respawn`;

-- Move gameobject_respawn from world to characters db
INSERT INTO `characters`.`gameobject_respawn` (`guid`, `respawntime`, `instance`)
SELECT `guid`, `respawntime`, `instance` FROM `world`.`gameobject_respawn`;
-- Remove creature_respawn table from world db
DROP TABLE `world`.`gameobject_respawn`;

-- Move reserved names from world to characters db
INSERT INTO `characters`.`reserved_name` (`name`)
SELECT `name` FROM `world`.`reserved_name`;
-- Remove reserved_names table from world db
DROP TABLE `world`.`reserved_name`;

*** THE ABOVE MUST BE DONE, OR EXISTING INSTANCES WILL BE FULLY RESPAWNED - YOU HAVE BEEN WARNED ***
Closes issue 4842. Closes issue 4849.

--HG--
branch : trunk
2010-11-19 15:53:14 +01:00
azazel
c0faed2251 Core/Guilds: guild code was completely refactored and rewritten.
* OOP desing and implementation;
* all the queries are moved to prepared statements;
* guild loading is optimized;
* all the possible interaction with guild's data is done inside the guild class;
* added more hooks to GuildScript class;

WARNING: Make sure you backup your characters database before applying this change (just in case).

Known problems with guilds:
* when new member is added to the guild, MOTD is not displayed for him in guild tab of social window;
* if you add item with random property to guild bank visual representation of item below it becomes wrong (it displays wrong stack number);
* packets order differs from official: currently guild bank packet traffic is twice as more than on offy.

--HG--
branch : trunk
2010-10-17 19:54:13 +06:00
click
613b81f36f REALLY fix the CRLF-crap...
--HG--
branch : trunk
2010-10-07 15:54:07 +02:00
click
df66aee929 Yet more copyright header updates
--HG--
branch : trunk
2010-10-07 13:38:35 +02:00
Anubisss
84a29b2d35 Remove const from MySQLConnectionInfo, can't use non const functions in a const struct. This fixes the compile error.
--HG--
branch : trunk
2010-09-30 20:32:09 +02:00
Machiavelli
fcec787e9c Core/DBLayer: Pass connection info down to lower level class MySQLConnection and use relevant data in logging messages in its methods
--HG--
branch : trunk
2010-09-29 15:29:57 +02:00