Homec4science

Provide an indirection layer between documents and the search engine

Authored by epriestley <git@epriestley.com> on Aug 8 2011, 00:14.

Description

Provide an indirection layer between documents and the search engine

Summary:
In preparation for adding another search engine (see T355):

  • Rename "executor" to "engine".
  • Move all engine-specific operations into the engine. Specifically, this

means that indexing moves out of the document store and into the engine (it was
sort of silly where it was before).

  • Split choice of an engine into an overridable "selector" class, a base API,

and a concrete MySQL implementation (just like storage engine selection).

  • Make all callers go through the indirection layer.

The default selector just unconditionally selects the MySQL engine, but now
(with D786) I can build an Elastic Search engine and you guys can build a
multi-target engine if you want and I don't get there fast enough.

Test Plan:

  • Created a new document (task).
  • Searched for and found it.
  • Viewed index reconstruction.

Reviewed By: jungejason
Reviewers: jungejason, amckinley, tuomaspelkonen, aran
CC: aran, jungejason, epriestley
Differential Revision: 788

Details

Committed
epriestley <git@epriestley.com>Aug 8 2011, 20:43
Pushed
aubortJan 31 2017, 17:16
Parents
rPHe35d72f48998: Build a basic calendar view
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHb8e08f34f7ae: Provide an indirection layer between documents and the search engine (authored by epriestley <git@epriestley.com>).Aug 8 2011, 20:43