Search/Fixup

* readd regular indizes for name cols. There are cases where entities
   are named in a way that does not work with FT indizes.
   ex. "XT:9" is two tokens "XT", "9" which are too short to be indexed.
 * additionally to FT search also exact match col to search string.
This commit is contained in:
Sarjuuk 2026-02-09 09:53:08 +01:00
parent e421bdba79
commit 00f048d3ae
4 changed files with 168 additions and 41 deletions

View file

@ -578,11 +578,17 @@ CREATE TABLE `aowow_creature` (
KEY `idx_skinloot` (`skinLootId`),
KEY `idx_trainer` (`trainerType`),
KEY `idx_trainerrequirement` (`trainerRequirement`),
FULLTEXT `idx_name0` (`name_loc0`),
FULLTEXT `idx_name2` (`name_loc2`),
FULLTEXT `idx_name3` (`name_loc3`),
FULLTEXT `idx_name6` (`name_loc6`),
FULLTEXT `idx_name8` (`name_loc8`),
FULLTEXT `idx_ft_name0` (`name_loc0`),
FULLTEXT `idx_ft_name2` (`name_loc2`),
FULLTEXT `idx_ft_name3` (`name_loc3`),
FULLTEXT `idx_ft_name6` (`name_loc6`),
FULLTEXT `idx_ft_name8` (`name_loc8`),
KEY `idx_name0` (`name_loc0`),
KEY `idx_name2` (`name_loc2`),
KEY `idx_name3` (`name_loc3`),
KEY `idx_name4` (`name_loc4`),
KEY `idx_name6` (`name_loc6`),
KEY `idx_name8` (`name_loc8`),
KEY `idx_spell1` (`spell1`),
KEY `idx_spell2` (`spell2`),
KEY `idx_spell3` (`spell3`),
@ -1470,11 +1476,17 @@ CREATE TABLE `aowow_items` (
KEY `idx_trigger4` (`spellTrigger4`),
KEY `idx_trigger5` (`spellTrigger5`),
KEY `idx_reqskill` (`requiredSkill`),
FULLTEXT `idx_name0` (`name_loc0`),
FULLTEXT `idx_name2` (`name_loc2`),
FULLTEXT `idx_name3` (`name_loc3`),
FULLTEXT `idx_name6` (`name_loc6`),
FULLTEXT `idx_name8` (`name_loc8`),
FULLTEXT `idx_ft_name0` (`name_loc0`),
FULLTEXT `idx_ft_name2` (`name_loc2`),
FULLTEXT `idx_ft_name3` (`name_loc3`),
FULLTEXT `idx_ft_name6` (`name_loc6`),
FULLTEXT `idx_ft_name8` (`name_loc8`),
KEY `idx_name0` (`name_loc0`),
KEY `idx_name2` (`name_loc2`),
KEY `idx_name3` (`name_loc3`),
KEY `idx_name4` (`name_loc4`),
KEY `idx_name6` (`name_loc6`),
KEY `idx_name8` (`name_loc8`),
KEY `idx_itemset` (`itemset`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
@ -1664,11 +1676,17 @@ CREATE TABLE `aowow_objects` (
KEY `idx_onsuccessspell` (`onSuccessSpell`),
KEY `idx_auraspell` (`auraSpell`),
KEY `idx_triggeredspell` (`triggeredSpell`),
FULLTEXT `idx_name0` (`name_loc0`),
FULLTEXT `idx_name2` (`name_loc2`),
FULLTEXT `idx_name3` (`name_loc3`),
FULLTEXT `idx_name6` (`name_loc6`),
FULLTEXT `idx_name8` (`name_loc8`)
FULLTEXT `idx_ft_name0` (`name_loc0`),
FULLTEXT `idx_ft_name2` (`name_loc2`),
FULLTEXT `idx_ft_name3` (`name_loc3`),
FULLTEXT `idx_ft_name6` (`name_loc6`),
FULLTEXT `idx_ft_name8` (`name_loc8`),
KEY `idx_name0` (`name_loc0`),
KEY `idx_name2` (`name_loc2`),
KEY `idx_name3` (`name_loc3`),
KEY `idx_name4` (`name_loc4`),
KEY `idx_name6` (`name_loc6`),
KEY `idx_name8` (`name_loc8`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
@ -2267,11 +2285,17 @@ CREATE TABLE `aowow_quests` (
`objectiveText4_loc8` text DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `nextQuestIdChain` (`nextQuestIdChain`),
FULLTEXT `idx_name0` (`name_loc0`),
FULLTEXT `idx_name2` (`name_loc2`),
FULLTEXT `idx_name3` (`name_loc3`),
FULLTEXT `idx_name6` (`name_loc6`),
FULLTEXT `idx_name8` (`name_loc8`),
FULLTEXT `idx_ft_name0` (`name_loc0`),
FULLTEXT `idx_ft_name2` (`name_loc2`),
FULLTEXT `idx_ft_name3` (`name_loc3`),
FULLTEXT `idx_ft_name6` (`name_loc6`),
FULLTEXT `idx_ft_name8` (`name_loc8`),
KEY `idx_name0` (`name_loc0`),
KEY `idx_name2` (`name_loc2`),
KEY `idx_name3` (`name_loc3`),
KEY `idx_name4` (`name_loc4`),
KEY `idx_name6` (`name_loc6`),
KEY `idx_name8` (`name_loc8`),
KEY `idx_sourcespell` (`sourceSpellId`),
KEY `idx_rewardspell` (`rewardSpell`),
KEY `idx_rewardcastspell` (`rewardSpellCast`),
@ -2875,11 +2899,17 @@ CREATE TABLE `aowow_spell` (
KEY `effect3AuraId` (`effect3AuraId`),
KEY `idx_skill1` (`skillLine1`),
KEY `idx_skill2` (`skillLine2OrMask`),
FULLTEXT `idx_name0` (`name_loc0`),
FULLTEXT `idx_name2` (`name_loc2`),
FULLTEXT `idx_name3` (`name_loc3`),
FULLTEXT `idx_name6` (`name_loc6`),
FULLTEXT `idx_name8` (`name_loc8`),
FULLTEXT `idx_ft_name0` (`name_loc0`),
FULLTEXT `idx_ft_name2` (`name_loc2`),
FULLTEXT `idx_ft_name3` (`name_loc3`),
FULLTEXT `idx_ft_name6` (`name_loc6`),
FULLTEXT `idx_ft_name8` (`name_loc8`),
KEY `idx_name0` (`name_loc0`),
KEY `idx_name2` (`name_loc2`),
KEY `idx_name3` (`name_loc3`),
KEY `idx_name4` (`name_loc4`),
KEY `idx_name6` (`name_loc6`),
KEY `idx_name8` (`name_loc8`),
KEY `idx_spellfamily` (`spellFamilyId`),
KEY `idx_miscvalue1` (`effect1MiscValue`),
KEY `idx_miscvalue2` (`effect2MiscValue`),