aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/world/master/2020_08_13_00_world.sql1
-rw-r--r--src/server/game/Handlers/HotfixHandler.cpp5
-rw-r--r--src/server/game/Server/Packets/HotfixPackets.cpp2
-rw-r--r--src/server/game/Server/Packets/HotfixPackets.h6
-rw-r--r--src/server/game/Server/WorldSession.cpp2
-rw-r--r--src/server/game/Server/WorldSession.h2
-rw-r--r--src/server/game/World/World.cpp13
-rw-r--r--src/server/game/World/World.h1
-rw-r--r--src/server/worldserver/worldserver.conf.dist8
9 files changed, 11 insertions, 29 deletions
diff --git a/sql/updates/world/master/2020_08_13_00_world.sql b/sql/updates/world/master/2020_08_13_00_world.sql
new file mode 100644
index 00000000000..c0bb73b91d7
--- /dev/null
+++ b/sql/updates/world/master/2020_08_13_00_world.sql
@@ -0,0 +1 @@
+ALTER TABLE `version` DROP `hotfix_cache_id`;
diff --git a/src/server/game/Handlers/HotfixHandler.cpp b/src/server/game/Handlers/HotfixHandler.cpp
index 0df97998d36..107b0e5afe5 100644
--- a/src/server/game/Handlers/HotfixHandler.cpp
+++ b/src/server/game/Handlers/HotfixHandler.cpp
@@ -22,6 +22,7 @@
#include "HotfixPackets.h"
#include "Log.h"
#include "ObjectDefines.h"
+#include "Realm.h"
#include "World.h"
void WorldSession::HandleDBQueryBulk(WorldPackets::Hotfix::DBQueryBulk& dbQuery)
@@ -55,9 +56,9 @@ void WorldSession::HandleDBQueryBulk(WorldPackets::Hotfix::DBQueryBulk& dbQuery)
}
}
-void WorldSession::SendAvailableHotfixes(int32 version)
+void WorldSession::SendAvailableHotfixes()
{
- SendPacket(WorldPackets::Hotfix::AvailableHotfixes(version, sDB2Manager.GetHotfixCount(), sDB2Manager.GetHotfixData()).Write());
+ SendPacket(WorldPackets::Hotfix::AvailableHotfixes(realm.Id.GetAddress(), sDB2Manager.GetHotfixCount(), sDB2Manager.GetHotfixData()).Write());
}
void WorldSession::HandleHotfixRequest(WorldPackets::Hotfix::HotfixRequest& hotfixQuery)
diff --git a/src/server/game/Server/Packets/HotfixPackets.cpp b/src/server/game/Server/Packets/HotfixPackets.cpp
index 4f77cff5721..eac6bb07bc0 100644
--- a/src/server/game/Server/Packets/HotfixPackets.cpp
+++ b/src/server/game/Server/Packets/HotfixPackets.cpp
@@ -63,7 +63,7 @@ WorldPacket const* DBReply::Write()
WorldPacket const* AvailableHotfixes::Write()
{
- _worldPacket << int32(HotfixCacheVersion);
+ _worldPacket << int32(VirtualRealmAddress);
_worldPacket << uint32(HotfixCount);
for (DB2Manager::HotfixRecord const& hotfixRecord : Hotfixes)
_worldPacket << hotfixRecord;
diff --git a/src/server/game/Server/Packets/HotfixPackets.h b/src/server/game/Server/Packets/HotfixPackets.h
index 497a85d55d9..27275cc5db6 100644
--- a/src/server/game/Server/Packets/HotfixPackets.h
+++ b/src/server/game/Server/Packets/HotfixPackets.h
@@ -61,12 +61,12 @@ namespace WorldPackets
class AvailableHotfixes final : public ServerPacket
{
public:
- AvailableHotfixes(int32 hotfixCacheVersion, uint32 hotfixCount, DB2Manager::HotfixContainer const& hotfixes)
- : ServerPacket(SMSG_AVAILABLE_HOTFIXES), HotfixCacheVersion(hotfixCacheVersion), HotfixCount(hotfixCount), Hotfixes(hotfixes) { }
+ AvailableHotfixes(int32 virtualRealmAddress, uint32 hotfixCount, DB2Manager::HotfixContainer const& hotfixes)
+ : ServerPacket(SMSG_AVAILABLE_HOTFIXES), VirtualRealmAddress(virtualRealmAddress), HotfixCount(hotfixCount), Hotfixes(hotfixes) { }
WorldPacket const* Write() override;
- int32 HotfixCacheVersion;
+ int32 VirtualRealmAddress;
uint32 HotfixCount;
DB2Manager::HotfixContainer const& Hotfixes;
};
diff --git a/src/server/game/Server/WorldSession.cpp b/src/server/game/Server/WorldSession.cpp
index 9b43398d691..8fbd99fd348 100644
--- a/src/server/game/Server/WorldSession.cpp
+++ b/src/server/game/Server/WorldSession.cpp
@@ -1078,7 +1078,7 @@ void WorldSession::InitializeSessionCallback(LoginDatabaseQueryHolder* realmHold
SendSetTimeZoneInformation();
SendFeatureSystemStatusGlueScreen();
SendClientCacheVersion(sWorld->getIntConfig(CONFIG_CLIENTCACHE_VERSION));
- SendAvailableHotfixes(int32(sWorld->getIntConfig(CONFIG_HOTFIX_CACHE_VERSION)));
+ SendAvailableHotfixes();
SendTutorialsData();
if (PreparedQueryResult characterCountsResult = holder->GetPreparedResult(AccountInfoQueryHolder::GLOBAL_REALM_CHARACTER_COUNTS))
diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h
index caefab3899e..8027cec4f43 100644
--- a/src/server/game/Server/WorldSession.h
+++ b/src/server/game/Server/WorldSession.h
@@ -930,7 +930,7 @@ class TC_GAME_API WorldSession
void SendAuthResponse(uint32 code, bool queued, uint32 queuePos = 0);
void SendClientCacheVersion(uint32 version);
- void SendAvailableHotfixes(int32 version);
+ void SendAvailableHotfixes();
void InitializeSession();
void InitializeSessionCallback(LoginDatabaseQueryHolder* realmHolder, CharacterDatabaseQueryHolder* holder);
diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp
index db5c0c45e6e..a8a8b8da74e 100644
--- a/src/server/game/World/World.cpp
+++ b/src/server/game/World/World.cpp
@@ -1216,16 +1216,6 @@ void World::LoadConfigSettings(bool reload)
}
TC_LOG_INFO("server.loading", "Client cache version set to: %u", m_int_configs[CONFIG_CLIENTCACHE_VERSION]);
- if (int32 hotfixCacheId = sConfigMgr->GetIntDefault("HotfixCacheVersion", 0))
- {
- // overwrite DB/old value
- if (hotfixCacheId > 0)
- m_int_configs[CONFIG_HOTFIX_CACHE_VERSION] = hotfixCacheId;
- else
- TC_LOG_ERROR("server.loading", "HotfixCacheVersion can't be negative %d, ignored.", hotfixCacheId);
- }
- TC_LOG_INFO("server.loading", "Hotfix cache version set to: %u", m_int_configs[CONFIG_HOTFIX_CACHE_VERSION]);
-
m_int_configs[CONFIG_GUILD_NEWS_LOG_COUNT] = sConfigMgr->GetIntDefault("Guild.NewsLogRecordsCount", GUILD_NEWSLOG_MAX_RECORDS);
if (m_int_configs[CONFIG_GUILD_NEWS_LOG_COUNT] > GUILD_NEWSLOG_MAX_RECORDS)
m_int_configs[CONFIG_GUILD_NEWS_LOG_COUNT] = GUILD_NEWSLOG_MAX_RECORDS;
@@ -3440,14 +3430,13 @@ void World::UpdateMaxSessionCounters()
void World::LoadDBVersion()
{
- if (QueryResult result = WorldDatabase.Query("SELECT db_version, cache_id, hotfix_cache_id FROM version LIMIT 1"))
+ if (QueryResult result = WorldDatabase.Query("SELECT db_version, cache_id FROM version LIMIT 1"))
{
Field* fields = result->Fetch();
m_DBVersion = fields[0].GetString();
// will be overwrite by config values if different and non-0
m_int_configs[CONFIG_CLIENTCACHE_VERSION] = fields[1].GetUInt32();
- m_int_configs[CONFIG_HOTFIX_CACHE_VERSION] = fields[2].GetUInt32();
}
if (m_DBVersion.empty())
diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h
index ee3158dc119..435bb49d181 100644
--- a/src/server/game/World/World.h
+++ b/src/server/game/World/World.h
@@ -340,7 +340,6 @@ enum WorldIntConfigs
CONFIG_LOGDB_CLEARINTERVAL,
CONFIG_LOGDB_CLEARTIME,
CONFIG_CLIENTCACHE_VERSION,
- CONFIG_HOTFIX_CACHE_VERSION,
CONFIG_GUILD_NEWS_LOG_COUNT,
CONFIG_GUILD_EVENT_LOG_COUNT,
CONFIG_GUILD_BANK_EVENT_LOG_COUNT,
diff --git a/src/server/worldserver/worldserver.conf.dist b/src/server/worldserver/worldserver.conf.dist
index 194d06aeb8f..1bffd74ad4a 100644
--- a/src/server/worldserver/worldserver.conf.dist
+++ b/src/server/worldserver/worldserver.conf.dist
@@ -1194,14 +1194,6 @@ OffhandCheckAtSpellUnlearn = 1
ClientCacheVersion = 0
#
-# HotfixCacheVersion
-# Description: Hotfix cache version for hotfix cache data reset. Use any value different
-# from DB and not recently been used to trigger client side cache reset.
-# Default: 0 - (Use DB value from world DB version.hotfix_id field)
-
-HotfixCacheVersion = 0
-
-#
# Event.Announce
# Description: Announce events.
# Default: 0 - (Disabled)