mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-30 02:32:42 +01:00
f97157e7ed
Summary: Ref T12819. I gave this stuff a sweet code name because all the terms related to "fulltext" and "search" already mean 5 different things. It, uh, ferrets out documents for you? I'm building this to work a lot like the existing ngram index, which seems to work pretty well. If this sticks, it will auto-resolve the join issue (in T12443) by letting us do the entire thing locally in a JOIN and thus dodge a lot of mess. This index gets built alongside other indexes, but only shows up in the UI if you have prototypes enabled. If you do, it appears under the existing fulltext field in Maniphest. No existing functionality is affected or disrupted. NOTE: The query engine half of this is still EXTREMELY primitive, and this probably performs worse than the existing field for now. If this doesn't show obvious signs of being awful on `secure` I'll improve that in followup changes. Test Plan: Indexed my tasks, ran some simple queries, got the results I wanted, even for queries "ko", "k", "v0.1". {F5147746} Reviewers: chad Reviewed By: chad Maniphest Tasks: T12819, T12443 Differential Revision: https://secure.phabricator.com/D18484
7 lines
361 B
SQL
7 lines
361 B
SQL
CREATE TABLE {$NAMESPACE}_maniphest.maniphest_task_ffield (
|
|
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
documentID INT UNSIGNED NOT NULL,
|
|
fieldKey VARCHAR(4) NOT NULL COLLATE {$COLLATE_TEXT},
|
|
rawCorpus LONGTEXT NOT NULL COLLATE {$COLLATE_SORT},
|
|
normalCorpus LONGTEXT NOT NULL COLLATE {$COLLATE_SORT}
|
|
) ENGINE=InnoDB, COLLATE {$COLLATE_TEXT};
|