[ 
https://issues.apache.org/jira/browse/SOLR-5119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13737272#comment-13737272
 ] 

Steve Rowe commented on SOLR-5119:
----------------------------------

I was able to reproduce both problems, in standalone mode and in SolrCloud mode.

Steps to reproduce in standalone mode: start the example in managed schema 
mode; add one or more fields via the REST API (e.g. the {{curl}} add fields 
command given in the description), then either reload the core or view the 
schema from the admin UI.

The source of both problems is the same: {{ManagedIndexSchema.shallowCopy()}} 
doesn't set {{resourceName}} at all, and then when it's referenced an NPE 
occurs:

{noformat}
382354 [qtp1973711593-30] INFO  org.apache.solr.servlet.SolrDispatchFilter  – 
[admin] webapp=null path=/admin/cores 
params={action=RELOAD&_=1376332774482&core=collection1&wt=json} status=500 
QTime=195 
382355 [qtp1973711593-30] ERROR org.apache.solr.servlet.SolrDispatchFilter  – 
null:org.apache.solr.common.SolrException: Error handling 'reload' action
        at 
org.apache.solr.handler.admin.CoreAdminHandler.handleReloadAction(CoreAdminHandler.java:671)
        at 
org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:172)
        at 
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
        at 
org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:618)
        at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:209)
        at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:158)
        at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
        at 
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
        at 
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
        at 
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
        at org.eclipse.jetty.server.Server.handle(Server.java:368)
        at 
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
        at 
org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)
        at 
org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:942)
        at 
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1004)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
        at 
org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
        at 
org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
        at java.lang.Thread.run(Thread.java:724)
Caused by: org.apache.solr.common.SolrException: Unable to reload core: 
collection1
        at 
org.apache.solr.core.CoreContainer.recordAndThrow(CoreContainer.java:930)
        at org.apache.solr.core.CoreContainer.reload(CoreContainer.java:685)
        at 
org.apache.solr.handler.admin.CoreAdminHandler.handleReloadAction(CoreAdminHandler.java:669)
        ... 30 more
Caused by: java.lang.NullPointerException
        at 
org.apache.solr.schema.ManagedIndexSchemaFactory.warnIfNonManagedSchemaExists(ManagedIndexSchemaFactory.java:222)
        at 
org.apache.solr.schema.ManagedIndexSchemaFactory.readSchemaLocally(ManagedIndexSchemaFactory.java:197)
        at 
org.apache.solr.schema.ManagedIndexSchemaFactory.create(ManagedIndexSchemaFactory.java:118)
        at 
org.apache.solr.schema.ManagedIndexSchemaFactory.create(ManagedIndexSchemaFactory.java:45)
        at 
org.apache.solr.schema.IndexSchemaFactory.buildIndexSchema(IndexSchemaFactory.java:69)
        at org.apache.solr.core.SolrCore.reload(SolrCore.java:404)
        at org.apache.solr.core.CoreContainer.reload(CoreContainer.java:675)
        ... 31 more
{noformat}

>From {{ManagedIndexSchemaFactory.warnIfNonManagedSchemaExists()}}:

{code:java}
221:  private void warnIfNonManagedSchemaExists() {
222:    if ( ! resourceName.equals(managedSchemaResourceName)) {
{code}

                
> Managed schema problems after adding fields via Schema Rest API 
> ----------------------------------------------------------------
>
>                 Key: SOLR-5119
>                 URL: https://issues.apache.org/jira/browse/SOLR-5119
>             Project: Solr
>          Issue Type: Bug
>          Components: Schema and Analysis
>    Affects Versions: 4.4
>            Reporter: NilsK
>            Assignee: Steve Rowe
>            Priority: Critical
>
> After adding fields with the Schema API the schema cannot be shown on the 
> Admin UI anymore and reloading the Collection/Core throws an 
> NullPointerException. The schema itself seems to work.
> Steps to reproduce:
> 1. enable managed schema in example/solr/collection1/conf/solrconfig.xml
> 2. upload that config
> {code}sh example/cloud-scripts/zkcli.sh -z localhost:8575 -cmd upconfig -d 
> example/solr/collection1/conf/ -n myconfig{code}
> 3. create a new collection 
> {code}curl 
> "http://localhost:8983/solr/admin/collections?action=CREATE&name=mycollection&numShards=1&replicationFactor=1&collection.configName=myconfig"{code}
> 4. add some fields
> {code}curl http://localhost:8983/solr/mycollection/schema/fields -X POST -H 
> 'Content-type:application/json' --data-binary '[
> {
>   "name": "my_field",
>   "type": "string",
>   "stored": true,
>   "indexed": true
> },
> {
>   "name": "my_field2",
>   "type": "string",
>   "stored": true,
>   "indexed": true
> }
> ]'{code}
> 5. *Problem 1*: 
> http://localhost:8983/solr/#/mycollection_shard1_replica1/schema
> {code}
> <?xml version="1.0" encoding="UTF-8"?>
> <response>
> <lst name="responseHeader"><int name="status">404</int><int 
> name="QTime">2</int></lst><lst name="error"><str name="msg">Can not find: 
> /configs/myconfig/null</str><int name="code">404</int></lst>
> </response>
> {code}
> 6. *Problem 2*: 
> http://localhost:8983/solr/admin/collections?action=RELOAD&name=mycollection
> {code}
> <response>
> <lst name="responseHeader"><int name="status">0</int><int 
> name="QTime">845</int></lst><lst name="failure"><str 
> name="10.147.252.2:8983_solr">org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:Server
>  at http://10.147.252.2:8983/solr returned non ok status:500, message:Server 
> Error</str></lst>
> </response>
> {code}
> 7. when restarting Solr, both 5 and 6 work 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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

Reply via email to