ElasticSearch Essentials

ElasticSearch Essentials [Paid] 3.15.12

No permission to buy ($30.00)
Ensure stemming is configured and also enabled near-exact text matching options. You'll need to rebuild the search index after that.
 
Ensure stemming is configured and also enabled near-exact text matching options. You'll need to rebuild the search index after that.


can you explain this to me in details ? where todo this

some HOWTO please


regards
 
Last edited:
This is stock XenForo Enhanced Search configuration options.

AdminCp => Setup => Enhanced Search => Index configuration, and make sure "Word stemming" is set to your language (or English)
 
This is stock XenForo Enhanced Search configuration options.

AdminCp => Setup => Enhanced Search => Index configuration, and make sure "Word stemming" is set to your language (or English)

done. rebuilded index, no effect

Threadheaders with dots dont found

Screenshot_4.webp

strange, on Forum search dont found but on similar threads was found

Screenshot_5.webp
 
Last edited:
The elasticsearch standard tokenizer (which is based on the standard Unicode Standard Annex #29) which splits text into indexable chunks simply doesn't handle the '.' like you are after.

This can kinda worked around by enabling the "Apply ngram filter at search time" which makes the text splitting vastly more aggressive (only only for autocomplete!), but it doesn't fully solve this problem which most users don't have.

What is happening is "hello.world.test.1" is being treated as a single blob, and "hello.world" doesn't match that.
 
Last edited:
The elasticsearch standard tokenizer (which is based on the standard Unicode Standard Annex #29) which splits text into indexable chunks simply doesn't handle the '.' like you are after.

This can kinda worked around by enabling the "Apply ngram filter at search time" which makes the text splitting vastly more aggressive (only only for autocomplete!), but it doesn't fully solve this problem which most users don't have.

What is happening is "hello.world.test.1" is being treated as a single blob, and "hello.world" doesn't match that.

hmm makes no sence, similar threads found and search dont... confused
 
I'm considering picking this up, but I got a few questions:

  • Can I build my own live-search with this that can access custom tables?
This add-on's autocomplete integrates with XF search backend and the XF entity system, not raw SQL.

It works with threads, XFRM resources or Tickets from NixFifty's ticket add-on.

Customization of the auto-complete front-end is fairly limited. It does accept blobs of html per element which can be customized.
 
Here is a situation I have:

User posts thread. Then a couple minutes later they search for a specific phrase that is only in that thread. The results say can't find that word and gives suggested results with possible search phrase. Now the users goes back to that search an hour later and still gets results without the actual thread. However, at the same time I can do a search and get just the thread as a result.

Question:
Is that something that can be remedied? It seems maybe the thread hadn't been index when first search was done and then they are getting a cached result later on.

I run your redis addons and your search/elasticsearch addons. Is there tweaks that can be made for remedy this situation?

Thanks
david
 
This is likely a mix of a few issues:
  • ElasticSearch does not commit changes for new content immediately
  • Sometimes XenForo will queue search index updates for various reasons.
  • XenForo only lets users run the same identical search once per hour
The first can be tuned by how fast ElasticSearch commits changes, and I believe the default is a few seconds so this shouldn't be too bad. The trouble is the XenForo side identical search filter thing.
 
Last edited:
Xon updated ElasticSearch Essentials with a new update entry:

3.14.0 - Feature & bugfix update

  • Require Standard Library by Xon v1.18.0+
  • Require Search Improvements v2.8.3+
  • Improve 3rd party add-on compatibility which extend the Search Controller and implement search handlers
  • Fix cases where an impossible search is sent to ElasticSearch instead of returning early
  • Fix ajax on the advanced search form was disabled when the showing suggestions on few results was enabled
  • Fix autocomplete with multiple types could return less results than expected
  • Add...

Read the rest of this update entry...
 
@Xon Server error log:

Code:
SV\ElasticSearchEssentials\XF\Repository\ImpossibleSearchResultsException: Impossible search result src/addons/SV/ElasticSearchEssentials/XF/Pub/Controller/Search.php:152

Generated by: Azrail Mar 27, 2023 at 9:35 PM

Stack trace

#0 src/addons/SV/ElasticSearchEssentials/XF/Pub/Controller/Search.php(292): SV\ElasticSearchEssentials\XF\Pub\Controller\Search->searchGroupableTypes(Object(SV\ElasticSearchEssentials\XF\Search\Query\KeywordQuery))
#1 src/XF/Pub/Controller/Search.php(106): SV\ElasticSearchEssentials\XF\Pub\Controller\Search->prepareSearchQuery(Array, Array)
#2 src/addons/SV/SearchImprovements/XF/Pub/Controller/Search.php(74): XF\Pub\Controller\Search->actionSearch()
#3 src/addons/SV/ElasticSearchEssentials/XF/Pub/Controller/Search.php(501): SV\SearchImprovements\XF\Pub\Controller\Search->actionSearch()
#4 src/XF/Mvc/Dispatcher.php(352): SV\ElasticSearchEssentials\XF\Pub\Controller\Search->actionSearch(Object(XF\Mvc\ParameterBag))
#5 src/XF/Mvc/Dispatcher.php(259): XF\Mvc\Dispatcher->dispatchClass('XF:Search', 'Search', Object(XF\Mvc\RouteMatch), Object(SV\ElasticSearchEssentials\XF\Pub\Controller\Search), NULL)
#6 src/XF/Mvc/Dispatcher.php(115): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(SV\ElasticSearchEssentials\XF\Pub\Controller\Search), NULL)
#7 src/XF/Mvc/Dispatcher.php(57): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#8 src/XF/App.php(2483): XF\Mvc\Dispatcher->run()
#9 src/XF.php(524): XF\App->run()
#10 index.php(20): XF::runApp('XF\\Pub\\App')
#11 {main}

Request state

array(4) {
  ["url"] => string(14) "/search/search"
  ["referrer"] => string(29) "/media/"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(4) {
    ["keywords"] => string(8) "Desi"
    ["constraints"] => string(30) "{"search_type":"xfmg_comment"}"
    ["c"] => array(3) {
      ["container_only"] => string(1) "1"
      ["users"] => string(0) ""
      ["word_count"] => array(1) {
        ["lower"] => string(0) ""
      }
    }
    ["_xfToken"] => string(8) "********"
  }
}
 
I have the latest add-on installed, rebuilt search indexes, have stemming enabled, etc. etc. and cannot for the life of me figure out why I can't get any results in the search box for the search term "avata" on my site https://rvforums.com which is to find posts on the DJI Avata. If you go to my site and type avata in the search box the auto complete list is not showing it and I don't know why. Any idea??
 

Attachments

  • so-3.webp
    so-3.webp
    64.8 KB · Views: 4
  • so-2.webp
    so-2.webp
    71.6 KB · Views: 4
  • so-1.webp
    so-1.webp
    64.7 KB · Views: 3
  • ese-4.webp
    ese-4.webp
    63 KB · Views: 3
  • ese-3.webp
    ese-3.webp
    65.2 KB · Views: 3
  • ese-2.webp
    ese-2.webp
    62.3 KB · Views: 3
  • ese-1.webp
    ese-1.webp
    71.6 KB · Views: 3
I have the latest add-on installed, rebuilt search indexes, have stemming enabled, etc. etc. and cannot for the life of me figure out why I can't get any results in the search box for the search term "avata" on my site https://rvforums.com which is to find posts on the DJI Avata. If you go to my site and type avata in the search box the auto complete list is not showing it and I don't know why. Any idea??
You have some settings I'ld recommend changing, some of them are just older defaults:
  • Enable "on error log search dsl" otherwise search failures are next to impossible to debug:
  • Title boost: 1.4
  • Exact title boost: 2
  • Weight by reply count (threads): 0.4

This will require a re-index to enable to 'Weight by reply count (threads)' feature, but it definitely helps.
 
Top Bottom