Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-13368

SchemaManager failures when processing schema update requests

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 8.0, 8.1, 9.0
    • 8.1, 9.0
    • None
    • None

    Description

      When sending a schema update requests occasionally SchemaManager produces this error:

      [junit4] 2> 508295 ERROR (qtp1376110895-5901) [n:127.0.0.1:48080_solr c:.system s:shard1 r:core_node2 x:.system_shard1_replica_n1] o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: Error reading input String Can't find resource 'schema.xml' in classpath or '/configs/.system', cwd=/var/lib/jenkins/jobs/Lucene-Solr-tests-master/workspace/solr/build/solr-core/test/J5
      [junit4] 2> at org.apache.solr.handler.SchemaHandler.handleRequestBody(SchemaHandler.java:94)
      [junit4] 2> at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)
      [junit4] 2> at org.apache.solr.core.SolrCore.execute(SolrCore.java:2566)
      [junit4] 2> at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:711)
      [junit4] 2> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:516)
      [junit4] 2> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:394)
      [junit4] 2> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:340)
      [junit4] 2> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
      [junit4] 2> at org.apache.solr.client.solrj.embedded.JettySolrRunner$DebugFilter.doFilter(JettySolrRunner.java:165)
      [junit4] 2> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
      [junit4] 2> at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
      [junit4] 2> at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
      [junit4] 2> at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1588)
      [junit4] 2> at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
      [junit4] 2> at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
      [junit4] 2> at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
      [junit4] 2> at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
      [junit4] 2> at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1557)
      [junit4] 2> at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
      [junit4] 2> at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
      [junit4] 2> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
      [junit4] 2> at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:703)
      [junit4] 2> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
      [junit4] 2> at org.eclipse.jetty.server.Server.handle(Server.java:502)
      [junit4] 2> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
      [junit4] 2> at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
      [junit4] 2> at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
      [junit4] 2> at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
      [junit4] 2> at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
      [junit4] 2> at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
      [junit4] 2> at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
      [junit4] 2> at java.lang.Thread.run(Thread.java:748)
      [junit4] 2> Caused by: org.apache.solr.core.SolrResourceNotFoundException: Can't find resource 'schema.xml' in classpath or '/configs/.system', cwd=/var/lib/jenkins/jobs/Lucene-Solr-tests-master/workspace/solr/build/solr-core/test/J5
      [junit4] 2> at org.apache.solr.cloud.ZkSolrResourceLoader.openResource(ZkSolrResourceLoader.java:130)
      [junit4] 2> at org.apache.solr.schema.SchemaManager.getFreshManagedSchema(SchemaManager.java:422)
      [junit4] 2> at org.apache.solr.schema.SchemaManager.doOperations(SchemaManager.java:105)
      [junit4] 2> at org.apache.solr.schema.SchemaManager.performOperations(SchemaManager.java:83)
      [junit4] 2> at org.apache.solr.handler.SchemaHandler.handleRequestBody(SchemaHandler.java:90)
      [junit4] 2> ... 31 more
      

      This happens for regular SolrCloud collections bootstrapped from file-based configs. If the configuration allows schema editing thenĀ solr.xml should be initially present in ZK, then it's replaced by managed-schema but a backup solr.xml.bak file still exists in ZK. In this situation SchemaManager should not complain about the missing solr.xml file.

      Attachments

        1. SOLR-13368.patch
          3 kB
          Andrzej Bialecki

        Activity

          People

            ab Andrzej Bialecki
            ab Andrzej Bialecki
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: