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