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

Reply via email to