SHARE
SHARE copied to clipboard
[ENG-6189] trovesearch denormalized
- add
trovesearch_denorm
index strategy to speed up/trove/index-card-search
and/trove/index-value-search
requests- used by default when the
TROVESEARCH_DENORMILY
feature flag is up - stop using
nested
fields (what a wild choice that was)- to support indexing values at arbitrary paths, use dynamic templates
- to support value-search with
cardSearchFilter
/cardSearchText
params, index additional docs for each iri value in an indexcard (each with a full copy of the card's filterable fields -- this is the denormalization part)
- include integer values (for sorting only, so far)
- used by default when the
- allow sorting by property-path (not only by a single property)
and assorted improvements from meanderings in #824
- move the definition of available index-strategies from settings to static code (to fix having code that depends on settings being just so)
- replace static methods on
IndexStrategy
with functions inshare.search.index_strategy
- add admin view to view mappings for an index
- update abstract
Elastic8IndexStrategy
to support indexing multiple docs per index-card (required for denormalization above) - make tests reusable for index-strategies supporting trove-search
- consolidate some logic shared across trove-y index strategies to reusable utils in
share.search.index_strategy._trovesearch_util
- more accurate type annotations