Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-5381 Split Clusterstate and scale
  3. SOLR-5474

Add stateFormat=2 support to CloudSolrServer



    • Type: Sub-task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.0, 6.0
    • Component/s: SolrCloud
    • Labels:


      In this mode SolrJ would not watch any ZK node

      It fetches the state on demand and cache the most recently used n collections in memory.

      SolrJ would not listen to any ZK node. When a request comes for a collection ‘xcoll’
      it would first check if such a collection exists
      If yes it first looks up the details in the local cache for that collection
      If not found in cache , it fetches the node /collections/xcoll/state.json and caches the information
      Any query/update will be sent with extra query param specifying the collection name , version (example _stateVer=xcoll:34) . A node would throw an error (INVALID_NODE) if it does not have the right version
      If SolrJ gets INVALID_NODE error it would invalidate the cache and fetch fresh state information for that collection (and caches it again)

      If there is a connection timeout, SolrJ assumes the node is down and re-fetch the state for the collection and try again


        1. fail.logs
          492 kB
          Mark Miller
        2. SOLR-5474.patch
          41 kB
          Timothy Potter
        3. SOLR-5474.patch
          39 kB
          Timothy Potter
        4. SOLR-5474.patch
          33 kB
          Timothy Potter

          Issue Links



              • Assignee:
                noble.paul Noble Paul
                noble.paul Noble Paul
              • Votes:
                1 Vote for this issue
                8 Start watching this issue


                • Created: