You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@solr.apache.org by Nate R <na...@gmail.com> on 2021/04/15 20:20:06 UTC

Solr 8.6 - No live SolrServers available to handle this request when using simple group

I am trying to make a simple group call. This is on a distributed solr
instance with 6 shards and 60m documents. I can make this same call when I
was on
a non distributed index. My understanding is that group still works on a
distributed index as long as you are not using ngroups, group.func, and
group.facet.
https://solr.apache.org/guide/8_6/result-grouping.html#distributed-result-grouping-caveats

{ "responseHeader":{ "zkConnected":true, "status":500, "QTime":833, "params
":{ "q":"*:*", "group.field":"contractNumber", "_":"1618516270590", "group":
"true"}}, "error":{ "metadata":[ "error-class",
"org.apache.solr.common.SolrException", "root-error-class",
"org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException"],
"msg":"org.apache.solr.client.solrj.SolrServerException: No live
SolrServers available to handle this request:... "code":500}}

<field name="contractNumber" type="text" docValues="true"
indexed="true" required="false" stored="false"
useDocValuesAsStored="true"/>


 <fieldType name="text" class="solr.SortableTextField"
omitNorms="true" positionIncrementGap="100">
    <analyzer type="index">
      <tokenizer class="solr.KeywordTokenizerFactory"/>
      <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
    <analyzer type="query">
      <tokenizer class="solr.KeywordTokenizerFactory"/>
      <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
  </fieldType>


Is this a bug?

Shard count:6
configName: myConfig
replicationFactor:3
maxShardsPerNode:10
router:compositeId
autoAddReplicas:False




Thanks

- Nate

Re: Solr 8.6 - No live SolrServers available to handle this request when using simple group

Posted by Joel Bernstein <jo...@gmail.com>.
This certainly looks like a bug. I'm wondering if it's related to the
sortable text field used for the group field, possibly it's not handling
nulls in the same way a string field does. One thing to test is if you're
having problems grouping on a string field without nulls, and then a string
field with nulls.

Joel Bernstein
http://joelsolr.blogspot.com/


On Sat, Apr 17, 2021 at 3:51 AM Nate R <na...@gmail.com> wrote:

> Here is my stacktrace. Looks to be something with the field type. I
> tried with other type fields - Int and ngram text fields. Same error
>
>
> java.lang.NullPointerException
>         at org.apache.solr.schema.FieldType.toExternal(FieldType.java:361)
>         at
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.serializeTopGroups(TopGroupsResultTransformer.java:210)
>         at
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:77)
>         at
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:57)
>         at
> org.apache.solr.search.grouping.CommandHandler.processResult(CommandHandler.java:214)
>         at
> org.apache.solr.handler.component.QueryComponent.doProcessGroupedDistributedSearchSecondPhase(QueryComponent.java:1424)
>         at
> org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:386)
>         at
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:363)
>         at
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:216)
>         at org.apache.solr.core.SolrCore.execute(SolrCore.java:2646)
>         at
> org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:794)
>         at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:567)
>         at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:427)
>         at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:357)
>         at
> org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201)
>         at
> org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>         at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
>         at
> org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
>         at org.eclipse.jetty.server.Server.handle(Server.java:516)
>         at
> org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
>         at
> org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
>         at
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
>         at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:335)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:135)
>         at
> org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:183)
>         at
> org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:138)
>         at
> org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:361)
>         at org.eclipse.jetty.io
> .FillInterest.fillable(FillInterest.java:105)
>         at org.eclipse.jetty.io
> .ChannelEndPoint$1.run(ChannelEndPoint.java:104)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
>         at
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
>         at
> org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)
>         at java.base/java.lang.Thread.run(Unknown Source)
>
>
> On Thu, Apr 15, 2021 at 6:23 PM Nate R <na...@gmail.com> wrote:
>
> > I also tried solr 8.8.2 with no luck
> >
> > On Thu, Apr 15, 2021, 3:20 PM Nate R <na...@gmail.com> wrote:
> >
> >> I am trying to make a simple group call. This is on a distributed solr
> >> instance with 6 shards and 60m documents. I can make this same call
> when I
> >> was on
> >> a non distributed index. My understanding is that group still works on a
> >> distributed index as long as you are not using ngroups, group.func, and
> >> group.facet.
> >>
> >>
> https://solr.apache.org/guide/8_6/result-grouping.html#distributed-result-grouping-caveats
> >>
> >> { "responseHeader":{ "zkConnected":true, "status":500, "QTime":833, "
> >> params":{ "q":"*:*", "group.field":"contractNumber",
> "_":"1618516270590",
> >> "group":"true"}}, "error":{ "metadata":[ "error-class",
> >> "org.apache.solr.common.SolrException", "root-error-class",
> >>
> "org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException"
> >> ], "msg":"org.apache.solr.client.solrj.SolrServerException: No live
> >> SolrServers available to handle this request:... "code":500}}
> >>
> >> <field name="contractNumber" type="text" docValues="true"
> indexed="true" required="false" stored="false" useDocValuesAsStored="true"/>
> >>
> >>
> >>  <fieldType name="text" class="solr.SortableTextField" omitNorms="true"
> positionIncrementGap="100">
> >>     <analyzer type="index">
> >>       <tokenizer class="solr.KeywordTokenizerFactory"/>
> >>       <filter class="solr.LowerCaseFilterFactory"/>
> >>     </analyzer>
> >>     <analyzer type="query">
> >>       <tokenizer class="solr.KeywordTokenizerFactory"/>
> >>       <filter class="solr.LowerCaseFilterFactory"/>
> >>     </analyzer>
> >>   </fieldType>
> >>
> >>
> >> Is this a bug?
> >>
> >> Shard count:6
> >> configName: myConfig
> >> replicationFactor:3
> >> maxShardsPerNode:10
> >> router:compositeId
> >> autoAddReplicas:False
> >>
> >>
> >>
> >>
> >> Thanks
> >>
> >> - Nate
> >>
> >
>

Re: Solr 8.6 - No live SolrServers available to handle this request when using simple group

Posted by Nate R <na...@gmail.com>.
Here is my stacktrace. Looks to be something with the field type. I
tried with other type fields - Int and ngram text fields. Same error


java.lang.NullPointerException
	at org.apache.solr.schema.FieldType.toExternal(FieldType.java:361)
	at org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.serializeTopGroups(TopGroupsResultTransformer.java:210)
	at org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:77)
	at org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:57)
	at org.apache.solr.search.grouping.CommandHandler.processResult(CommandHandler.java:214)
	at org.apache.solr.handler.component.QueryComponent.doProcessGroupedDistributedSearchSecondPhase(QueryComponent.java:1424)
	at org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:386)
	at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:363)
	at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:216)
	at org.apache.solr.core.SolrCore.execute(SolrCore.java:2646)
	at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:794)
	at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:567)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:427)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:357)
	at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201)
	at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191)
	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.Server.handle(Server.java:516)
	at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
	at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:335)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:135)
	at org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:183)
	at org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:138)
	at org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:361)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
	at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)
	at java.base/java.lang.Thread.run(Unknown Source)


On Thu, Apr 15, 2021 at 6:23 PM Nate R <na...@gmail.com> wrote:

> I also tried solr 8.8.2 with no luck
>
> On Thu, Apr 15, 2021, 3:20 PM Nate R <na...@gmail.com> wrote:
>
>> I am trying to make a simple group call. This is on a distributed solr
>> instance with 6 shards and 60m documents. I can make this same call when I
>> was on
>> a non distributed index. My understanding is that group still works on a
>> distributed index as long as you are not using ngroups, group.func, and
>> group.facet.
>>
>> https://solr.apache.org/guide/8_6/result-grouping.html#distributed-result-grouping-caveats
>>
>> { "responseHeader":{ "zkConnected":true, "status":500, "QTime":833, "
>> params":{ "q":"*:*", "group.field":"contractNumber", "_":"1618516270590",
>> "group":"true"}}, "error":{ "metadata":[ "error-class",
>> "org.apache.solr.common.SolrException", "root-error-class",
>> "org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException"
>> ], "msg":"org.apache.solr.client.solrj.SolrServerException: No live
>> SolrServers available to handle this request:... "code":500}}
>>
>> <field name="contractNumber" type="text" docValues="true" indexed="true" required="false" stored="false" useDocValuesAsStored="true"/>
>>
>>
>>  <fieldType name="text" class="solr.SortableTextField" omitNorms="true" positionIncrementGap="100">
>>     <analyzer type="index">
>>       <tokenizer class="solr.KeywordTokenizerFactory"/>
>>       <filter class="solr.LowerCaseFilterFactory"/>
>>     </analyzer>
>>     <analyzer type="query">
>>       <tokenizer class="solr.KeywordTokenizerFactory"/>
>>       <filter class="solr.LowerCaseFilterFactory"/>
>>     </analyzer>
>>   </fieldType>
>>
>>
>> Is this a bug?
>>
>> Shard count:6
>> configName: myConfig
>> replicationFactor:3
>> maxShardsPerNode:10
>> router:compositeId
>> autoAddReplicas:False
>>
>>
>>
>>
>> Thanks
>>
>> - Nate
>>
>

Re: Solr 8.6 - No live SolrServers available to handle this request when using simple group

Posted by Nate R <na...@gmail.com>.
I also tried solr 8.8.2 with no luck

On Thu, Apr 15, 2021, 3:20 PM Nate R <na...@gmail.com> wrote:

> I am trying to make a simple group call. This is on a distributed solr
> instance with 6 shards and 60m documents. I can make this same call when I
> was on
> a non distributed index. My understanding is that group still works on a
> distributed index as long as you are not using ngroups, group.func, and
> group.facet.
>
> https://solr.apache.org/guide/8_6/result-grouping.html#distributed-result-grouping-caveats
>
> { "responseHeader":{ "zkConnected":true, "status":500, "QTime":833, "
> params":{ "q":"*:*", "group.field":"contractNumber", "_":"1618516270590",
> "group":"true"}}, "error":{ "metadata":[ "error-class",
> "org.apache.solr.common.SolrException", "root-error-class",
> "org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException"
> ], "msg":"org.apache.solr.client.solrj.SolrServerException: No live
> SolrServers available to handle this request:... "code":500}}
>
> <field name="contractNumber" type="text" docValues="true" indexed="true" required="false" stored="false" useDocValuesAsStored="true"/>
>
>
>  <fieldType name="text" class="solr.SortableTextField" omitNorms="true" positionIncrementGap="100">
>     <analyzer type="index">
>       <tokenizer class="solr.KeywordTokenizerFactory"/>
>       <filter class="solr.LowerCaseFilterFactory"/>
>     </analyzer>
>     <analyzer type="query">
>       <tokenizer class="solr.KeywordTokenizerFactory"/>
>       <filter class="solr.LowerCaseFilterFactory"/>
>     </analyzer>
>   </fieldType>
>
>
> Is this a bug?
>
> Shard count:6
> configName: myConfig
> replicationFactor:3
> maxShardsPerNode:10
> router:compositeId
> autoAddReplicas:False
>
>
>
>
> Thanks
>
> - Nate
>