Lift Conpherence indexing up out of the Fulltext index


Lift Conpherence indexing up out of the Fulltext index

Ref T9979. There are currently some hacks around Conpherence indexing: it does not really use the fulltext index, but its own specialized index. However, it's kind of hacked up so it can get reindexed by the normal indexing pipeline.

Lift it up into IndexEngine, instead of FulltextEngine. Specifically, the new stuff is going to look like this:

  • IndexEngine: Rebuild all indexes.
    • ConpherenceIndexExtension: Rebuild thread indexes.
    • ProjectMemberIndexExtension: Rebuild project membership views.
    • NgramIndexExtension: Rebuild ngram indexes.
    • FulltextIndexExtension / FulltextEngine: Rebuild fulltext indexes, a special type of index.
      • FulltextCommentExtension: Rebuild comment fulltext indexes.
      • FulltextProjectExtension: Rebuild project fulltext indexes.
      • etc.

Most of this is at least sort-of-in-place as of this diff, although some of the part in the middle is still pretty rough.

Test Plan:

  • Made a unique comment in a Conpherence thread.
  • Used bin/search index --force to rebuild the index.
  • Searched for the comment.
  • Found the thread.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T9979

Differential Revision: https://secure.phabricator.com/D14841