You can also (I think) explicitly define the ping request handler in solrconfig.xml to do something else.
> On Aug 2, 2019, at 9:50 AM, Jörn Franke <jornfra...@gmail.com> wrote: > > Not sure if this is possible, but why not create a query handler in Solr with > any custom query and you use that as ping replacement ? > >> Am 02.08.2019 um 15:48 schrieb dinesh naik <dineshkumarn...@gmail.com>: >> >> Hi all, >> I have few clusters with huge data set and whenever a node goes down its >> not able to recover due to below reasons: >> >> 1. ping request handler is taking more than 10-15 seconds to respond. The >> ping requesthandler however, expects it will return in less than 1 second >> and fails a requestrecovery if it is not responded to in this time. >> Therefore recoveries never would start. >> >> 2. soft commit is very low ie. 5 sec. This is a business requirement so >> not much can be done here. >> >> As the standard/default admin/ping request handler is using *:* queries , >> the response time is much higher, and i am looking for an option to change >> the same so that the ping handler returns the results within few >> miliseconds. >> >> here is an example for standard query time: >> >> ----snip--- >> curl " >> http://hostname:8983/solr/parts/select?indent=on&q=*:*&rows=0&wt=json&distrib=false&debug=timing >> " >> { >> "responseHeader":{ >> "zkConnected":true, >> "status":0, >> "QTime":16620, >> "params":{ >> "q":"*:*", >> "distrib":"false", >> "debug":"timing", >> "indent":"on", >> "rows":"0", >> "wt":"json"}}, >> "response":{"numFound":1329638799,"start":0,"docs":[] >> }, >> "debug":{ >> "timing":{ >> "time":16620.0, >> "prepare":{ >> "time":0.0, >> "query":{ >> "time":0.0}, >> "facet":{ >> "time":0.0}, >> "facet_module":{ >> "time":0.0}, >> "mlt":{ >> "time":0.0}, >> "highlight":{ >> "time":0.0}, >> "stats":{ >> "time":0.0}, >> "expand":{ >> "time":0.0}, >> "terms":{ >> "time":0.0}, >> "block-expensive-queries":{ >> "time":0.0}, >> "slow-query-logger":{ >> "time":0.0}, >> "debug":{ >> "time":0.0}}, >> "process":{ >> "time":16619.0, >> "query":{ >> "time":16619.0}, >> "facet":{ >> "time":0.0}, >> "facet_module":{ >> "time":0.0}, >> "mlt":{ >> "time":0.0}, >> "highlight":{ >> "time":0.0}, >> "stats":{ >> "time":0.0}, >> "expand":{ >> "time":0.0}, >> "terms":{ >> "time":0.0}, >> "block-expensive-queries":{ >> "time":0.0}, >> "slow-query-logger":{ >> "time":0.0}, >> "debug":{ >> "time":0.0}}}}} >> >> >> ----snap---- >> >> can we use query: _root_:abc in the ping request handler ? Tried this query >> and its returning the results within few miliseconds and also the nodes are >> able to recover without any issue. >> >> we want to use _root_ field for querying as this field is available in all >> our clusters with below definition: >> <field name="_root_" type="string" omitNorms="true" indexed="true" >> termOffsets="false" stored="false" termPayloads="false" termPositions= >> "false" docValues="false" termVectors="false"/> >> Could you please let me know if using _root_ for querying in >> pingRequestHandler will cause any problem? >> >> <requestHandler name="/admin/ping" class="solr.PingRequestHandler"> <lst >> name="invariants"> <str name="qt">/select</str><!-- handler to delegate to >> --> <str name="q">_root_:abc</str> </lst> </requestHandler> >> >> >> -- >> Best Regards, >> Dinesh Naik