[ 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