[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15290806#comment-15290806 ] Christine Poerschke commented on SOLR-9045: --- [jira/solr-9045|https://github.com/apache/lucene-solr/tree/jira/solr-9045] working branch updated. Updated as yet without renaming of RecoveryStrategy but if renamed happened the rename would happen first. As far as making it really clear in the comments and docs that custom implementations are not really supported between versions, that is also yet to be done, I'm not quite sure where best to add it (assuming the optional solrconfig.xml element would _not_ be added to the example configs). What do you think? > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15276401#comment-15276401 ] Christine Poerschke commented on SOLR-9045: --- Essentially SOLR-9044 is the motivation i.e. to support (somehow) configuration to use an alternative network interface (and the motivation for that being to separate copy-all-data recovery replication traffic from regular live within-cloud traffic). I would imagine SOLR-9044 would be done by optionally augmenting the cluster state with extra urls. The RecoveryStrategy configuration option would then be to opt-in to the use of the extra urls (i.e. the mere presence of the extra urls would not change RecoveryStrategy behaviour and if the recovery strategy opted-in to use the special urls then the absence of such urls should generate errors or warnings). > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15276353#comment-15276353 ] Mark Miller commented on SOLR-9045: --- What is the motivation for making this stuff configurable by the way? I really think we should make this mostly just work well in all situations rather than expose internal config that may change or should not really be necessary to tweak. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15273158#comment-15273158 ] Mark Miller commented on SOLR-9045: --- Could be DataSynchronizationRunner or something too, but given it's the prime driver of the recovery status, I kind of like recovery in the name. Of course, tlog replay should probably be under recovery too, and that is very distinct from this class, so perhaps it's better it doesn't try and synergize with the recovery key word, as it really just may be a piece of the recovery puzzle longer term. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15273145#comment-15273145 ] Mark Miller commented on SOLR-9045: --- bq. How about renaming RecoveryStrategy to RecoveryImplementation (or something like it)? Trying to think of what this actually is, and currently I'm around DataRecoveryRunner or something. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15271368#comment-15271368 ] David Smiley commented on SOLR-9045: bq. How about renaming RecoveryStrategy to RecoveryImplementation (or something like it) Might it have _what_ is being recovered? Or say something like SolrCloudRecoveryImpl to at least give a sense of scope that it has to do with SolrCloud stuff? Just a thought. But then it's in the "cloud" package so perhaps nevermind. My very first reaction was wondering if it was some sort of connection recovery thing. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15271011#comment-15271011 ] Christine Poerschke commented on SOLR-9045: --- bq. ... we should be explicit in comments / doc that custom impls are not really supported between versions ... bq. ... A rename should probably be done first if we are going to do it. I agree that any rename should be done first and that comments/docs should be very clear re: custom implementations being custom and there being no guarantees w.r.t. backwards compatibility or lack thereof. How about renaming {{RecoveryStrategy}} to {{RecoveryImplementation}} (or something like it)? To indicate in name as well as comments/docs that the class is implementation and thus no assumptions should be made w.r.t. changes between versions. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15265954#comment-15265954 ] Mark Miller commented on SOLR-9045: --- The name is really another issue. The history of the current name is that it was the first thing I thought of when prototyping. At the time, I probably imagined some other strategies. I no longer do. A rename should probably be done first if we are going to do it. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15265952#comment-15265952 ] Mark Miller commented on SOLR-9045: --- I think doing it like UpdateHandler is probably fine, but that we should be explicit in comments / doc that custom impls are not really supported between versions in terms of API or behavior back compat. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15264027#comment-15264027 ] Christine Poerschke commented on SOLR-9045: --- bq. Configuration makes sense to me, but I don't think we should ever officially support a custom user impl. ... Okay, that rules out a RecoveryStrategyFactory then, configuration of settings can be done without a factory. bq. It'd be nice if this could be more clear as to what a "RecoveryStrategy" even is; ... I agree that the name(s) of any new configuration element(s) need not necessarily match the underlying class names. [RecoveryStrategy|https://github.com/apache/lucene-solr/blob/master/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java] currently has three settings which taken literally could translate into configuration something like this: {code} 7000 500 5000 {code} How are the settings used? * [waitForUpdatesWithStaleStatePause|https://github.com/apache/lucene-solr/blob/master/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java#L357]'s code mentions SOLR-7141 for discussion around current value. * [startingRecoveryDelay|https://github.com/apache/lucene-solr/blob/master/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java#L495] is used to wait for an (exponential) interval between retries. * [maxRetries|https://github.com/apache/lucene-solr/blob/master/solr/core/src/java/org/apache/solr/cloud/RecoveryStrategy.java#L481] determines how soon "Recovery failed - I give up." happens. bq. ... We could perhaps do something like UpdateHandler, where you can do it, but you're crazy to do it unless you check your impl every release and only have minor changes to behavior (and even then it's crazy). I agree that configuring something other than the defaults is probably a bit of a niche use case. Replication via an alternative network interface (SOLR-9044) e.g. to separate out replication versus regular live within-cloud traffic would perhaps also be relatively niche (though technically only a minor change to behaviour) and opt-in to that could be via an additional configuration rather than a class derived from the existing RecoveryStrategy class. So, it seems there's three alternatives. * solrconfig.xml element called similar to the element and as illustrated above * solrconfig.xml element(s) called something else (similar to the element?) * two additional system properties "solr.cloud.max-retries" and "solr.cloud.starting-recovery-delay" ("solr.cloud.wait-for-updates-with-stale-state-pause" already exists) What do you think? > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15262225#comment-15262225 ] David Smiley commented on SOLR-9045: It'd be nice if this could be more clear as to what a "RecoveryStrategy" even is; maybe a longer name to clarify what it is that is being recovered? I don't know what it is. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15262216#comment-15262216 ] Mark Miller commented on SOLR-9045: --- bq. a custom recovery strategy Configuration makes sense to me, but I don't think we should ever officially support a custom user impl. Even unofficially, it seems dangerous to even let users think they can customize this. We could perhaps do something like UpdateHandler, where you can do it, but you're crazy to do it unless you check your impl every release and only have minor changes to behavior (and even then it's crazy). > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-9045) configurable RecoveryStrategy support
[ https://issues.apache.org/jira/browse/SOLR-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15260508#comment-15260508 ] Christine Poerschke commented on SOLR-9045: --- [jira/solr-9045|https://github.com/apache/lucene-solr/tree/jira/solr-9045] working branch created. Comments and input on the idea itself and/or code reviews and/or collaboration, questions, etc. welcome as usual. Thank you. > configurable RecoveryStrategy support > -- > > Key: SOLR-9045 > URL: https://issues.apache.org/jira/browse/SOLR-9045 > Project: Solr > Issue Type: New Feature >Reporter: Christine Poerschke >Assignee: Christine Poerschke >Priority: Minor > > objectives: > * To allow users to change RecoveryStrategy settings such as maxRetries and > startingRecoveryDelay. > * To support configuration of a custom recovery strategy. > illustrative solrconfig.xml snippet: > {code} > > 250 > > > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org