• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Elasticsearch 2.0.0 released

kontrabass

Well-known member
#6
I did get several errors last night, but it appears the cause is a couple old Waindigo add-ons (Search by Waindigo, which allows searches with no keyword, and Custom Fields which allows us to assign custom fields to our Classifieds forums). The errors appear when users for example search our classifieds for "5 string" basses with no keyword etc.

I wonder if I can fix this with a elasticsearch.yml setting?

Code:
XenForo_Exception: Elasticsearch error: {"root_cause":[{"type":"query_phase_execution_exception","reason":"Result window is too large, from + size must be less than or equal to: [10000] but was [24000]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter."}],"type":"search_phase_execution_exception","reason":"all shards failed","phase":"query_fetch","grouped":true,"failed_shards":[{"shard":0,"index":"tbsearch","node":"3Ta4Eu3qTTaC3s9-9Ibf7w","reason":{"type":"query_phase_execution_exception","reason":"Result window is too large, from + size must be less than or equal to: [10000] but was [24000]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter."}}]} - library/XenES/Search/SourceHandler/ElasticSearch.php:872
Generated By: NeilGB, Today at 12:58 AM
Stack Trace
#0 /home/talkbass/html/library/XenES/Search/SourceHandler/ElasticSearch.php(326): XenES_Search_SourceHandler_ElasticSearch->_logSearchResponseError(Object(stdClass), true)
#1 /home/talkbass/html/library/SV/SearchImprovements/XenES/Search/SourceHandler/ElasticSearch.php(11): XenES_Search_SourceHandler_ElasticSearch->executeSearch('**', false, Array, Array, 'thread', '1500', Object(Waindigo_Search_Extend_XenForo_Search_DataHandler_Post))
#2 /home/talkbass/html/library/XenForo/Search/SourceHandler/Abstract.php(152): SV_SearchImprovements_XenES_Search_SourceHandler_ElasticSearch->executeSearch('**', false, Array, Array, 'thread', '1500', Object(Waindigo_Search_Extend_XenForo_Search_DataHandler_Post))
#3 /home/talkbass/html/library/XenForo/Search/Searcher.php(111): XenForo_Search_SourceHandler_Abstract->searchType(Object(Waindigo_Search_Extend_XenForo_Search_DataHandler_Post), '**', Array, 'date', '1', '1500')
#4 /home/talkbass/html/library/XenForo/ControllerPublic/Search.php(240): XenForo_Search_Searcher->searchType(Object(Waindigo_Search_Extend_XenForo_Search_DataHandler_Post), '**', Array, 'date', '1')
#5 /home/talkbass/html/library/Waindigo/Search/Extend/XenForo/ControllerPublic/Search.php(83): XenForo_ControllerPublic_Search->actionSearch()
#6 /home/talkbass/html/library/XenES/Proxy/ControllerSearch.php(30): Waindigo_Search_Extend_XenForo_ControllerPublic_Search->actionSearch()
#7 /home/talkbass/html/library/SV/SearchImprovements/XenForo/ControllerPublic/Search.php(41): XenES_Proxy_ControllerSearch->actionSearch()
#8 /home/talkbass/html/library/XenForo/FrontController.php(351): SV_SearchImprovements_XenForo_ControllerPublic_Search->actionSearch()
#9 /home/talkbass/html/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#10 /home/talkbass/html/index.php(13): XenForo_FrontController->run()
#11 {main}
Request State
array(3) {
  ["url"] => string(37) "http://www.talkbass.com/search/search"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(8) {
    ["keywords"] => string(0) ""
    ["users"] => string(0) ""
    ["date"] => string(0) ""
    ["nodes"] => array(1) {
      [0] => string(3) "126"
    }
    ["type"] => array(1) {
      ["post"] => array(1) {
        ["group_discussion"] => string(1) "1"
      }
    }
    ["custom_fields"] => array(2) {
      ["strings"] => string(4) "five"
      ["state"] => string(0) ""
    }
    ["custom_fields_shown"] => array(4) {
      [0] => string(7) "strings"
      [1] => string(8) "fretless"
      [2] => string(5) "lefty"
      [3] => string(5) "state"
    }
    ["_xfToken"] => string(8) "********"
  }
}
@Xon ? Noticed SearchImprovements in the stack trace as well..
 

Xon

Well-known member
#7
@kontrabass This is a XenForo limitation of how it uses the Elastic Search API. From the error message:

Result window is too large, from + size must be less than or equal to: [10000] but was [24000]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level parameter
Try reducing the max returned search results that XF fetches. Make sure it is less than 2500. Or altering the index parameter as suggested.

You should file this as a bug report against XFES, as it may impact how they do search results in the future.
 

kontrabass

Well-known member
#8
@kontrabass This is a XenForo limitation of how it uses the Elastic Search API. From the error message:



Try reducing the max returned search results that XF fetches. Make sure it is less than 2500. Or altering the index parameter as suggested.

You should file this as a bug report against XFES, as it may impact how they do search results in the future.
I'll try decreasing max results returned, from 1500 to 1000. Will post bug report. Thanks :)
 

Rudy

Well-known member
#9
I'll try decreasing max results returned, from 1500 to 1000. Will post bug report. Thanks :)
Did this ever work?

I have an old ElasticSearch I'm looking to upgrade, but I am not sure if I need to make any configuration changes to ElasticSearch if I use 2.1.1 vs. 1.7.4. Having search fail on me when we have around 1800 users online isn't something I need happening.
 

markku

Well-known member
#11
Hey, I have ElasticSearch 1.7.4 on Ubuntu, can someone give a quick pointer how to update to ES 2.x?

Is it as simple as changing the ES repo to the one of 2.x and apt-get update & apt-get upgrade?
 

Rudy

Well-known member
#14
I did the same thing on one of my servers last week. ES is still dying for no apparent reason every 24-36 hours (the upgrade did not cure it, nor make it worse), but monit restarts it without fuss. I took the opportunity to clean up my .yml config file, made sure my settings were all good, and so far it's been working just fine.

On one of our "early adopter" big boards, I have to do it all manually but even there, I don't think I will encounter any issues.