ElasticSearch Essentials

ElasticSearch Essentials [Paid] 3.17.16

No permission to buy ($30.00)
That template modification not applying is fine, you don't need to worry about it. Next version will update the comment to describe it is a compatibility fix, or have it removed
 
Does this add-on especially the auto-complete related part work meaningfully with Asian languages?
 
Good question! It is unicode aware, and uses elasticsearch for all the heavy lifting, so I guess it comes down to how well it is tuned for non-english languages.
 
Great. One more step closer to be a buyer..

Another concern is how much impact it will have on page load speed? Would there be a noticable difference before and after having the add-on installed?
 
Very little, the resulting thread Ids for similar thread search is cached and then only those threads fetched when viewed.
 
It should work, I don't see any breaking changes. But be aware that 7.7.0 isn't production ready (yet), so it is possible that it isn't supported by XFES fully.
 
@Xon PixelExit style support added but we have @Russ Flat Awesome style that are not applied Template modification.

ScreenShot00295.png
 
Last edited:
It is conditional support, not every template modification will apply. There should be an xbsearch which is applying instead.
 
Hi Xon,

This addon is very very nice, he makes the coffee. :)

I have nevertheless a return error in console:

Code:
elasticsearch | [2020-04-26T21:52:04,089][WARN ][o.e.d.c.ParseField       ] [odfe-node1] Deprecated field [cutoff_frequency] used, replaced by [you can omit this option, the [multi_match] query can skip block of documents efficiently if the total number of hits is not tracked]

It speaks to you Xon ? (Latest OpenDistro)
 
Last edited:
Hi Xon,

This addon is very very nice, he makes the coffee. :)

I have nevertheless a return error in console:

Code:
elasticsearch | [2020-04-26T21:52:04,089][WARN ][o.e.d.c.ParseField       ] [odfe-node1] Deprecated field [cutoff_frequency] used, replaced by [you can omit this option, the [multi_match] query can skip block of documents efficiently if the total number of hits is not tracked]

It speaks to you Xon ? (Latest OpenDistro)
It looks like this was added in v7.3, I'll just disable it for any v7 ElasticSearch instance since it is saner.
 
@Xon
Suddenly I got this kind of error every day. It started (I think) after I update your two addons to the latest version (this one and search improvments).
I know it is server performance error probably, but I did not change anything about elasticsearch on server in last month.

So, any thoughts what could it be?

Code:
Server error log
XFES\Elasticsearch\ConnectException: cURL error 28: Resolving timed out after 3000 milliseconds (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) src/addons/XFES/Elasticsearch/Api.php:390
Generated by: Sunka 03.05.2020. at 14:31
Stack trace
#0 src/addons/XFES/Elasticsearch/Api.php(90): XFES\Elasticsearch\Api->request()
#1 src/addons/XFES/Elasticsearch/Api.php(107): XFES\Elasticsearch\Api->version()
#2 src/addons/XFES/Search/Source/Elasticsearch.php(230): XFES\Elasticsearch\Api->majorVersion()
#3 src/addons/SV/SearchImprovements/XFES/Search/Source/Elasticsearch.php(86): XFES\Search\Source\Elasticsearch->getDslFromQuery()
#4 src/addons/SV/WordCountSearch/XFES/Search/Source/Elasticsearch.php(19): SV\SearchImprovements\XFES\Search\Source\Elasticsearch->getDslFromQuery()
#5 src/addons/SV/ElasticSearchEssentials/XFES/Search/Source/Elasticsearch.php(183): SV\WordCountSearch\XFES\Search\Source\Elasticsearch->getDslFromQuery()
#6 src/addons/XFES/Search/Source/Elasticsearch.php(149): SV\ElasticSearchEssentials\XFES\Search\Source\Elasticsearch->getDslFromQuery()
#7 src/addons/SV/ElasticSearchEssentials/XFES/Search/Source/Elasticsearch.php(381): XFES\Search\Source\Elasticsearch->search()
#8 src/XF/Search/Search.php(175): SV\ElasticSearchEssentials\XFES\Search\Source\Elasticsearch->search()
#9 src/XF/Repository/Search.php(34): XF\Search\Search->search()
#10 src/addons/SV/ElasticSearchEssentials/XF/Repository/Search.php(46): XF\Repository\Search->runSearch()
#11 src/XF/Pub/Controller/Search.php(402): SV\ElasticSearchEssentials\XF\Repository\Search->runSearch()
#12 src/XF/Pub/Controller/Search.php(248): XF\Pub\Controller\Search->runSearch()
#13 src/addons/SV/ElasticSearchEssentials/XF/Pub/Controller/Search.php(43): XF\Pub\Controller\Search->actionMember()
#14 src/XF/Mvc/Dispatcher.php(350): SV\ElasticSearchEssentials\XF\Pub\Controller\Search->actionMember()
#15 src/XF/Mvc/Dispatcher.php(257): XF\Mvc\Dispatcher->dispatchClass()
#16 src/XF/Mvc/Dispatcher.php(113): XF\Mvc\Dispatcher->dispatchFromMatch()
#17 src/XF/Mvc/Dispatcher.php(55): XF\Mvc\Dispatcher->dispatchLoop()
#18 src/XF/App.php(2184): XF\Mvc\Dispatcher->run()
#19 src/XF.php(391): XF\App->run()
#20 index.php(20): XF::runApp()
#21 {main}

-------------

Previous GuzzleHttp\Exception\ConnectException: cURL error 28: Resolving timed out after 3000 milliseconds (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) - src/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php:185
#0 src/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php(149): GuzzleHttp\Handler\CurlFactory::createRejection()
#1 src/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php(102): GuzzleHttp\Handler\CurlFactory::finishError()
#2 src/vendor/guzzlehttp/guzzle/src/Handler/CurlHandler.php(43): GuzzleHttp\Handler\CurlFactory::finish()
#3 src/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php(28): GuzzleHttp\Handler\CurlHandler->__invoke()
#4 src/vendor/guzzlehttp/guzzle/src/Handler/Proxy.php(51): GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}()
#5 src/vendor/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php(37): GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}()
#6 src/vendor/guzzlehttp/guzzle/src/Middleware.php(30): GuzzleHttp\PrepareBodyMiddleware->__invoke()
#7 src/vendor/guzzlehttp/guzzle/src/RedirectMiddleware.php(70): GuzzleHttp\Middleware::GuzzleHttp\{closure}()
#8 src/vendor/guzzlehttp/guzzle/src/Middleware.php(58): GuzzleHttp\RedirectMiddleware->__invoke()
#9 src/vendor/guzzlehttp/guzzle/src/HandlerStack.php(67): GuzzleHttp\Middleware::GuzzleHttp\{closure}()
#10 src/vendor/guzzlehttp/guzzle/src/Client.php(277): GuzzleHttp\HandlerStack->__invoke()
#11 src/vendor/guzzlehttp/guzzle/src/Client.php(98): GuzzleHttp\Client->transfer()
#12 src/vendor/guzzlehttp/guzzle/src/Client.php(106): GuzzleHttp\Client->sendAsync()
#13 src/addons/XFES/Elasticsearch/Api.php(373): GuzzleHttp\Client->send()
#14 src/addons/XFES/Elasticsearch/Api.php(90): XFES\Elasticsearch\Api->request()
#15 src/addons/XFES/Elasticsearch/Api.php(107): XFES\Elasticsearch\Api->version()
#16 src/addons/XFES/Search/Source/Elasticsearch.php(230): XFES\Elasticsearch\Api->majorVersion()
#17 src/addons/SV/SearchImprovements/XFES/Search/Source/Elasticsearch.php(86): XFES\Search\Source\Elasticsearch->getDslFromQuery()
#18 src/addons/SV/WordCountSearch/XFES/Search/Source/Elasticsearch.php(19): SV\SearchImprovements\XFES\Search\Source\Elasticsearch->getDslFromQuery()
#19 src/addons/SV/ElasticSearchEssentials/XFES/Search/Source/Elasticsearch.php(183): SV\WordCountSearch\XFES\Search\Source\Elasticsearch->getDslFromQuery()
#20 src/addons/XFES/Search/Source/Elasticsearch.php(149): SV\ElasticSearchEssentials\XFES\Search\Source\Elasticsearch->getDslFromQuery()
#21 src/addons/SV/ElasticSearchEssentials/XFES/Search/Source/Elasticsearch.php(381): XFES\Search\Source\Elasticsearch->search()
#22 src/XF/Search/Search.php(175): SV\ElasticSearchEssentials\XFES\Search\Source\Elasticsearch->search()
#23 src/XF/Repository/Search.php(34): XF\Search\Search->search()
#24 src/addons/SV/ElasticSearchEssentials/XF/Repository/Search.php(46): XF\Repository\Search->runSearch()
#25 src/XF/Pub/Controller/Search.php(402): SV\ElasticSearchEssentials\XF\Repository\Search->runSearch()
#26 src/XF/Pub/Controller/Search.php(248): XF\Pub\Controller\Search->runSearch()
#27 src/addons/SV/ElasticSearchEssentials/XF/Pub/Controller/Search.php(43): XF\Pub\Controller\Search->actionMember()
#28 src/XF/Mvc/Dispatcher.php(350): SV\ElasticSearchEssentials\XF\Pub\Controller\Search->actionMember()
#29 src/XF/Mvc/Dispatcher.php(257): XF\Mvc\Dispatcher->dispatchClass()
#30 src/XF/Mvc/Dispatcher.php(113): XF\Mvc\Dispatcher->dispatchFromMatch()
#31 src/XF/Mvc/Dispatcher.php(55): XF\Mvc\Dispatcher->dispatchLoop()
#32 src/XF/App.php(2184): XF\Mvc\Dispatcher->run()
#33 src/XF.php(391): XF\App->run()
#34 index.php(20): XF::runApp()
#35 {main}
Request state
array(4) {
  ["url"] => string(27) "/search/member?user_id=4513"
  ["referrer"] => string(106) "https://www.pijanitvor.com/threads/kratki-slatkovodni-izvjestaji-sa-ribolova-2018-2020-godina.29718/page-9"
  ["_GET"] => array(2) {
    ["/search/member"] => string(0) ""
    ["user_id"] => string(4) "4513"
  }
  ["_POST"] => array(0) {
  }
}
 
That is unrelated to any add-on update. Try restarting elastic search and/or updating it.
 
Xon updated ElasticSearch Essentials with a new update entry:

3.4.0 - Feature update

  • Fix auto-complete not respecting the search spesiifity's content-type restriction (ie this <container>, this <type>, vs everywhere)
  • Add "Show similar content to bots" option
  • Add "older than" to date-range search, with a style property to revert to previous UI
  • Add search auto-complete for @Bob's AMS and XFRM
  • Add support for CLI command xf-rebuild:search-bulk's "--newest-first" for @Bob's AMS and XFRM

Post...

Read the rest of this update entry...
 
I've updated but I think i've found a bug.

Here's what I did:

I upgraded the add-on.
Enabled the auto complete content for articles as well as threads. (I do not have resources so it's not listed).
I Rebuild search index: Content type (ALL) and checked the " Delete the index before rebuilding"

When you search for an article and click the auto complete link it takes me to "https://www.joyfreak.com/resources", a page that doesn't exist.
 
Back
Top Bottom