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

make RecoveryStrategy settings configurable

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 6.5, 7.0
    • None
    • None

    Description

      objectives:

      • to allow users to change RecoveryStrategy settings such as maxRetries and startingRecoveryDelay
      • to support configuration of a custom recovery strategy e.g. SOLR-9044

      patch summary:

      • support for optional <recoveryStrategy> solrconfig.xml element added (if element is present then its class attribute is optional)
      • RecoveryStrategy settings now have getters/setters
      • RecoveryStrategy.Builder added (and RecoveryStrategy constructor made non-public in favour of RecoveryStrategy.Builder.create)
      • protected RecoveryStrategy.getReplicateLeaderUrl method factored out (ConfigureRecoveryStrategyTest$CustomRecoveryStrategyBuilder test illustrates how SOLR-9044 might override the method)
      • ConfigureRecoveryStrategyTest.java using solrconfig-configurerecoverystrategy.xml or solrconfig-customrecoverystrategy.xml

      illustrative solrconfig.xml snippets:

      • change a RecoveryStrategy setting
          <recoveryStrategy>
            <int name="maxRetries">250</int>
          </recoveryStrategy>
        
      • configure a custom class
          <recoveryStrategy class="org.apache.solr.core.ConfigureRecoveryStrategyTest$CustomRecoveryStrategyBuilder">
            <str name="alternativeBaseUrlProp">recovery_base_url</str>
          </recoveryStrategy>
        

      Attachments

        1. SOLR-9045.patch
          26 kB
          Christine Poerschke

        Issue Links

          Activity

            People

              cpoerschke Christine Poerschke
              cpoerschke Christine Poerschke
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: