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

Shard splitting fails with ClassCastException on clusterstate.json with router as string

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.6, 4.6.1
    • 4.7
    • SolrCloud
    • None

    Description

      SOLR-5246 added support for splitting collections configured with a router.field but the fix was not back-compatible.

      After upgrading an old SolrCloud cluster to 4.6 or 4.6.1, shard splitting can fail with the following message:

      ERROR o.a.s.handler.admin.CoreAdminHandler - ERROR executing split:
      java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Map
      at org.apache.solr.handler.admin.CoreAdminHandler.handleSplitAction(CoreAdminHandler.java:285) [solr-core-4.6.1.jar:4.6.1 1560866 - mark - 2014-01-23 20:21:50]
      at org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:193) [solr-core-4.6.1.jar:4.6.1 1560866 - mark - 2014-01-23 20:21:50]
      at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135) [solr-core-4.6.1.jar:4.6.1 1560866 - mark - 2014-01-23 20:21:50]

      This happens because the cluster state still contains the router as a string. The clusterstate.json is supposed to auto-upgrade if cluster state is upgraded but according to the user report that did not happen. In any case, we need to fix the core admin split.

      Attachments

        Activity

          People

            shalin Shalin Shekhar Mangar
            shalin Shalin Shekhar Mangar
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: