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

Jerry Chung updated SOLR-18391:
-------------------------------
    Description: 
 
{quote}org.apache.solr.client.solrj.RemoteSolrException: Error from server at 
[http://127.0.0.1:44215/solr/admin/collections?action=CREATE&name=mycollection{_}&collection.configName=_default&shards=shard1{_}&nrtReplicas=1&tlogReplicas=0&pullReplicas=0&wt=javabin|http://127.0.0.1:44215/solr/admin/collections?action=CREATE&name=1_076b1fe3792825a9__4924f1b_1a01135e243__7ffdI1_076b1fe3792825a9__4924f1b_1a01135e243__7fd1&collection.configName=_default&createNodeSet=127.0.0.1%3A44215_solr&router.name=implicit&shards=shard1_v10&property.store.id=1&property.store.guid=1_076b1fe3792825a9__4924f1b_1a01135e243__7fcf&nrtReplicas=1&tlogReplicas=0&pullReplicas=0&wt=javabin]:
 org.apache.solr.common.SolrException: at 
org.apache.solr.client.solrj.impl.HttpSolrClientBase.processErrorsAndResponse(HttpSolrClientBase.java:241)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.processErrorsAndResponse(HttpJettySolrClient.java:589)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.request(HttpJettySolrClient.java:483)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.lambda$requestWithBaseUrl$0(HttpJettySolrClient.java:518)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:537)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:518)
 at 
org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:623) 
at 
org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:611) 
at 
org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:636) 
at 
org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:580) 
at 
fortiva.service.storage.index.CloudSolrClientExt.sendRequest(CloudSolrClientExt.java:249)
 at 
org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:1206)
 at 
org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:1128)
 at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:302) at 
org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:348)
{quote} * Where it happens ({{{}PlacementPluginAssignStrategy.assign(){}}})

 
 * What causes it (null from {{getCollection()}} — the race between 
{{waitForState}} and {{getClusterState()}} in {{{}CreateCollectionCmd{}}})
 * The consequence (zombie collection with 0 replicas, no cleanup — unlike the 
{{Assign.AssignmentException}} path which calls {{{}DeleteCollectionCmd{}}})

 

The NPE hits {{catch (Exception ex)

{ throw new SolrException(SERVER_ERROR, null, ex); }

}} with a null message, bypassing the cleanup code, making the error hard to 
diagnose on the client side.

  was:
 
{quote}org.apache.solr.client.solrj.RemoteSolrException: Error from server at 
[http://127.0.0.1:44215/solr/admin/collections?action=CREATE&name=1_076b1fe3792825a9__4924f1b_1a01135e243__7ffdI1_076b1fe3792825a9__4924f1b_1a01135e243__7fd1&collection.configName=_default&createNodeSet=127.0.0.1%3A44215_solr&router.name=implicit&shards=shard1&property.store.id=1&property.store.guid=1_076b1fe3792825a9__4924f1b_1a01135e243__7fcf&nrtReplicas=1&tlogReplicas=0&pullReplicas=0&wt=javabin|http://127.0.0.1:44215/solr/admin/collections?action=CREATE&name=1_076b1fe3792825a9__4924f1b_1a01135e243__7ffdI1_076b1fe3792825a9__4924f1b_1a01135e243__7fd1&collection.configName=_default&createNodeSet=127.0.0.1%3A44215_solr&router.name=implicit&shards=shard1_v10&property.store.id=1&property.store.guid=1_076b1fe3792825a9__4924f1b_1a01135e243__7fcf&nrtReplicas=1&tlogReplicas=0&pullReplicas=0&wt=javabin]:
 org.apache.solr.common.SolrException: at 
org.apache.solr.client.solrj.impl.HttpSolrClientBase.processErrorsAndResponse(HttpSolrClientBase.java:241)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.processErrorsAndResponse(HttpJettySolrClient.java:589)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.request(HttpJettySolrClient.java:483)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.lambda$requestWithBaseUrl$0(HttpJettySolrClient.java:518)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:537)
 at 
org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:518)
 at 
org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:623) 
at 
org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:611) 
at 
org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:636) 
at 
org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:580) 
at 
fortiva.service.storage.index.CloudSolrClientExt.sendRequest(CloudSolrClientExt.java:249)
 at 
org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:1206)
 at 
org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:1128)
 at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:302) at 
org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:348)
{quote}
* Where it happens ({{{}PlacementPluginAssignStrategy.assign(){}}})

 
 * What causes it (null from {{getCollection()}} — the race between 
{{waitForState}} and {{getClusterState()}} in {{{}CreateCollectionCmd{}}})
 * The consequence (zombie collection with 0 replicas, no cleanup — unlike the 
{{Assign.AssignmentException}} path which calls {{{}DeleteCollectionCmd{}}})

 

The NPE hits {{catch (Exception ex)

{ throw new SolrException(SERVER_ERROR, null, ex); }

}} with a null message, bypassing the cleanup code, making the error hard to 
diagnose on the client side.


> PlacementPluginAssignStrategy.assign() NPE on null getCollection() during 
> collection creation leaves zombie collection with no replicas
> ---------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-18391
>                 URL: https://issues.apache.org/jira/browse/SOLR-18391
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: Server
>    Affects Versions: 10.0
>            Reporter: Jerry Chung
>            Priority: Major
>
>  
> {quote}org.apache.solr.client.solrj.RemoteSolrException: Error from server at 
> [http://127.0.0.1:44215/solr/admin/collections?action=CREATE&name=mycollection{_}&collection.configName=_default&shards=shard1{_}&nrtReplicas=1&tlogReplicas=0&pullReplicas=0&wt=javabin|http://127.0.0.1:44215/solr/admin/collections?action=CREATE&name=1_076b1fe3792825a9__4924f1b_1a01135e243__7ffdI1_076b1fe3792825a9__4924f1b_1a01135e243__7fd1&collection.configName=_default&createNodeSet=127.0.0.1%3A44215_solr&router.name=implicit&shards=shard1_v10&property.store.id=1&property.store.guid=1_076b1fe3792825a9__4924f1b_1a01135e243__7fcf&nrtReplicas=1&tlogReplicas=0&pullReplicas=0&wt=javabin]:
>  org.apache.solr.common.SolrException: at 
> org.apache.solr.client.solrj.impl.HttpSolrClientBase.processErrorsAndResponse(HttpSolrClientBase.java:241)
>  at 
> org.apache.solr.client.solrj.jetty.HttpJettySolrClient.processErrorsAndResponse(HttpJettySolrClient.java:589)
>  at 
> org.apache.solr.client.solrj.jetty.HttpJettySolrClient.request(HttpJettySolrClient.java:483)
>  at 
> org.apache.solr.client.solrj.jetty.HttpJettySolrClient.lambda$requestWithBaseUrl$0(HttpJettySolrClient.java:518)
>  at 
> org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:537)
>  at 
> org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:518)
>  at 
> org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:623)
>  at 
> org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:611)
>  at 
> org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:636)
>  at 
> org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:580) 
> at 
> fortiva.service.storage.index.CloudSolrClientExt.sendRequest(CloudSolrClientExt.java:249)
>  at 
> org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:1206)
>  at 
> org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:1128)
>  at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:302) at 
> org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:348)
> {quote} * Where it happens ({{{}PlacementPluginAssignStrategy.assign(){}}})
>  
>  * What causes it (null from {{getCollection()}} — the race between 
> {{waitForState}} and {{getClusterState()}} in {{{}CreateCollectionCmd{}}})
>  * The consequence (zombie collection with 0 replicas, no cleanup — unlike 
> the {{Assign.AssignmentException}} path which calls 
> {{{}DeleteCollectionCmd{}}})
>  
> The NPE hits {{catch (Exception ex)
> { throw new SolrException(SERVER_ERROR, null, ex); }
> }} with a null message, bypassing the cleanup code, making the error hard to 
> diagnose on the client side.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to