[ 
https://issues.apache.org/jira/browse/SOLR-15347?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mayya Sharipova updated SOLR-15347:
-----------------------------------
    Security:     (was: Public)

> Group=true&group.field=myTextField/myStringField Error with solr cloud
> ----------------------------------------------------------------------
>
>                 Key: SOLR-15347
>                 URL: https://issues.apache.org/jira/browse/SOLR-15347
>             Project: Solr
>          Issue Type: Bug
>    Affects Versions: 8.6, 8.8.1
>            Reporter: Nathan Reinhardt
>            Priority: Major
>         Attachments: solrConfig.png
>
>
>  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]
>   
>  I will post some iterations I have tried. I have gotten two different errors 
> based on the number of shards. This works with 1 shard so it seems to be with 
> distributed searches. I started on 8.6 but then updated to 8.8.1. My solr 
> instance is running in Kubernetes. We have completely tore down the instance 
> and reinstantiated it also. No luck.  _I have another collection on a 
> different instance that has 3 shards and uses a basic string field - it 
> works._
> Senario 1 - Original
>   
> {noformat}
> {
>   "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}}{noformat}
>  
> {noformat}
> <field name="contractNumber" type="text" docValues="true" indexed="true" 
> required="false" stored="false" useDocValuesAsStored="true"/>{noformat}
>  
> {noformat}
> <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>{noformat}
>  
>   
>  Shard count:6
>  configName: myConfig
>  replicationFactor:3
>  maxShardsPerNode:10
>  router:compositeId
>  autoAddReplicas:False
> h2.  
> h2. Senario 2
>  
>   2 shards, field is a string now. 
> {noformat}
> {
>   "responseHeader":{
>     "zkConnected":true,
>     "status":500,
>     "QTime":26,
>     "params":{
>       "q":"*:*",
>       "group.field":"contractNumber",
>       "_":"1618582691970",
>       "group":"true"}},
>   "error":{
>     "metadata":[
>       
> "error-class","org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException",
>       
> "root-error-class","org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException"],
>     "msg":"Error from server at null: java.lang.NullPointerException\n\tat 
> org.apache.solr.schema.FieldType.toExternal(FieldType.java:361)\n\tat 
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.serializeTopGroups(TopGroupsResultTransformer.java:210)\n\tat
>  
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:77)\n\tat
>  
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:57)\n\tat
>  
> org.apache.solr.search.grouping.CommandHandler.processResult(CommandHandler.java:214)\n\tat
>  
> org.apache.solr.handler.component.QueryComponent.doProcessGroupedDistributedSearchSecondPhase(QueryComponent.java:1424)\n\tat
>  
> org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:386)\n\tat
>  
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:355)\n\tat
>  
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:216)\n\tat
>  org.apache.solr.core.SolrCore.execute(SolrCore.java:2646)\n\tat 
> org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:794)\n\tat 
> org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:567)\n\tat 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:427)\n\tat
>  
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:357)\n\tat
>  org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201)\n\tat 
> org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\n\tat
>  
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\n\tat
>  
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)\n\tat
>  
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)\n\tat
>  
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)\n\tat
>  
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)\n\tat
>  
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)\n\tat
>  
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)\n\tat
>  
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\n\tat
>  
> org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\n\tat
>  org.eclipse.jetty.server.Server.handle(Server.java:516)\n\tat 
> org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)\n\tat
>  org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)\n\tat 
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)\n\tat 
> org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:335)\n\tat 
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:135)\n\tat
>  
> org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:183)\n\tat
>  
> org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:138)\n\tat
>  
> org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:361)\n\tat
>  org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)\n\tat 
> org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)\n\tat 
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)\n\tat
>  
> org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)\n\tat
>  
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)\n\tat
>  
> org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)\n\tat
>  java.base/java.lang.Thread.run(Unknown Source)\n",
>     
> "trace":"org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException:
>  Error from server at null: java.lang.NullPointerException\n\tat 
> org.apache.solr.schema.FieldType.toExternal(FieldType.java:361)\n\tat 
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.serializeTopGroups(TopGroupsResultTransformer.java:210)\n\tat
>  
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:77)\n\tat
>  
> org.apache.solr.search.grouping.distributed.shardresultserializer.TopGroupsResultTransformer.transform(TopGroupsResultTransformer.java:57)\n\tat
>  
> org.apache.solr.search.grouping.CommandHandler.processResult(CommandHandler.java:214)\n\tat
>  
> org.apache.solr.handler.component.QueryComponent.doProcessGroupedDistributedSearchSecondPhase(QueryComponent.java:1424)\n\tat
>  
> org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:386)\n\tat
>  
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:355)\n\tat
>  
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:216)\n\tat
>  org.apache.solr.core.SolrCore.execute(SolrCore.java:2646)\n\tat 
> org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:794)\n\tat 
> org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:567)\n\tat 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:427)\n\tat
>  
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:357)\n\tat
>  org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201)\n\tat 
> org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\n\tat
>  
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\n\tat
>  
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)\n\tat
>  
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1612)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)\n\tat
>  
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)\n\tat
>  
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)\n\tat
>  
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1582)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)\n\tat
>  
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)\n\tat
>  
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)\n\tat
>  
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\n\tat
>  
> org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)\n\tat
>  
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\n\tat
>  org.eclipse.jetty.server.Server.handle(Server.java:516)\n\tat 
> org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)\n\tat
>  org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)\n\tat 
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)\n\tat 
> org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:335)\n\tat 
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:135)\n\tat
>  
> org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:183)\n\tat
>  
> org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:138)\n\tat
>  
> org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:361)\n\tat
>  org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)\n\tat 
> org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)\n\tat 
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)\n\tat
>  
> org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)\n\tat
>  
> org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)\n\tat
>  
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:773)\n\tat
>  
> org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:905)\n\tat
>  java.base/java.lang.Thread.run(Unknown Source)\n\n\tat 
> org.apache.solr.client.solrj.impl.Http2SolrClient.processErrorsAndResponse(Http2SolrClient.java:742)\n\tat
>  
> org.apache.solr.client.solrj.impl.Http2SolrClient.request(Http2SolrClient.java:412)\n\tat
>  
> org.apache.solr.client.solrj.impl.Http2SolrClient.request(Http2SolrClient.java:761)\n\tat
>  org.apache.solr.client.solrj.SolrClient.request(SolrClient.java:1290)\n\tat 
> org.apache.solr.handler.component.HttpShardHandler.request(HttpShardHandler.java:80)\n\tat
>  
> org.apache.solr.handler.component.ShardRequestor.call(ShardRequestor.java:130)\n\tat
>  
> org.apache.solr.handler.component.ShardRequestor.call(ShardRequestor.java:41)\n\tat
>  java.base/java.util.concurrent.FutureTask.run(Unknown Source)\n\tat 
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown 
> Source)\n\tat java.base/java.util.concurrent.FutureTask.run(Unknown 
> Source)\n\tat 
> com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:180)\n\tat
>  
> org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor.lambda$execute$0(ExecutorUtil.java:218)\n\tat
>  java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown 
> Source)\n\tat 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown 
> Source)\n\tat java.base/java.lang.Thread.run(Unknown Source)\n",
>     "code":500}}
> {noformat}
> {noformat}
> <field name="contractNumber" type="string" docValues="false" indexed="true" 
> required="false" stored="true" useDocValuesAsStored="false"/>{noformat}
> {noformat}
> Shard count:2
> configName:myConfigSet
> replicationFactor:3
> maxShardsPerNode:5
> router:compositeId
> autoAddReplicas:False{noformat}
>  
>  
> One shows an error saying "No live SolrServers available to handle this 
> request:.." and one is a "Null pointer exception". When I have 3+ shards it 
> is always the first error. If I dig down I do see the Null pointer exception 
> so I imagine its just how errors are forwarded on larger distributed sets. 
>  
> I have tried the most basic fieldtype and group search and its still not 
> working. Let me know if you need more info



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to