-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EZP-30282: Impl. indexing of related objects for the full text search #135
Conversation
lib/FieldMapper/ContentTranslationFieldMapper/ContentDocumentFulltextFields.php
Outdated
Show resolved
Hide resolved
lib/FieldMapper/ContentTranslationFieldMapper/ContentDocumentFulltextFields.php
Outdated
Show resolved
Hide resolved
New comment after looking at the updated diff 😄 Looks promising 👍 |
Somewhat side here: I'm wondering if this is maybe overlapping with the index boosting issue we have for fields that is being discussed with @kmadejski and @pspanja. As in to add context on that; From my understand we either need to A. start to index all fields separately for fulltext in order to be able to boost them separately, or B. we need to consider using Solr Payloads in order to be able to boost terms. If A, then this stuff could have been indexed as part of the relevant relation/relationList/page field full text index. But that said I realize it does not match needs for embeds on RichText which then will need either separate field or Payload as well... :) So in the end, I guess I'm 👍 on the approach here for relations, just wanted to share in case others here look at it differently. |
/** | ||
* Return index field type for the given $contentType. | ||
* | ||
* @param \eZ\Publish\SPI\Persistence\Content\Type $contentType | ||
* @param $depth |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems to be some copy-paste mistake 😉
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This feels like a rocket science to me. Formula for this is not documented anywhere in Solr.
I'm fine with new inventions, but some Search integration test would be useful to see what it does (especially that you yourself have put implementing tests in TODOs ;) )
But the "request changes" is for something else:
bundle/DependencyInjection/EzSystemsEzPlatformSolrSearchEngineExtension.php
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From my side, after internal discussion, this is fine 👍
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested successfully depth 1,2,3 with single, shared and multi core setup.
Works fine. 👍
Description
Impl. indexation of related objects for the full text search.
Indexing related content
Text of related content is stored in the
meta_related_content_X__text_t
index fields whereX
is relation level e.g.meta_related_content_1__text_t
,meta_related_content_2__text_t
Boost factor for related content
As an User, I expect the following order of search results for query "Content A":
Content A
,Content B
when content repository containsContent A
andContent B
with embeddedContent A
.This is implemented by adding boost factor based on the following formula:
to the index fields with related content. Ref.
ezplatform-solr-search-engine/lib/Query/Content/CriterionVisitor/FullText.php
Lines 154 to 157 in 1238c57
Indexing depth configuration
As a Developer, you are able to define the maximum indexing depth using the following YAML configuration:
Indexing of the related content is disabled by default, however, this might change in eZ Platform 3.X.
Checklist:
$ composer fix-cs
)