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