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

Old SolrJ implementations (8.x) are incompatible with 9.0 Clouds

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 8.0
    • 8.10
    • SolrJ
    • None

    Description

      The ZkStateReader in 8.x (and previous versions) checks that a /clusterstate.json node exists in the ZK ChRoot, to ensure that the ChRoot hosts a Solr Cloud. However, starting in 9.0, /clusterstate.json has been removed, and it is auto-deleted if a user tries to create one.

      That means that the ZkStateReader from SolrJ 8.x will error when trying to connect with a Solr 9 cloud, with the message:

      Cannot connect to cluster at localhost:2181/: cluster not found/not ready

      The solution, is to have the ZK State Reader check both /clusterstate.json and /collections and only error if both are missing.  /clusterstate.json is long-deprecated in 8.x anyways, so adding this additional check is good practice in general.

      While it would be nice for every user to use the same SolrJ version as the version they are running for Solr, it can be difficult in practice, especially when upgrading major Solr versions. It would be preferable to support at least version + 1 clouds in SolrJ, for the purpose of upgrades.

      Attachments

        Activity

          People

            houston Houston Putman
            houston Houston Putman
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 50m
                50m