You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Gus Heck (JIRA)" <ji...@apache.org> on 2019/04/25 03:45:00 UTC

[jira] [Commented] (SOLR-13420) Allow Routed Aliases to use Collection Properties instead of core properties

    [ https://issues.apache.org/jira/browse/SOLR-13420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16825686#comment-16825686 ] 

Gus Heck commented on SOLR-13420:
---------------------------------

Patch moves the functionality for identifying the routed alias associated with a request to CollectionProperties. Caching and a more conservative, double checked synchronization were added to ZkStateReader for Collection properties such that if any code either registers a collection properties watcher for a collection or observes the collection properties via getProperties, the properties for that collection will then be cached and updated via watches thereafter. This avoids spamming zookeeper now that each call to RoutedAliasUpdateProcessor.wrap() checks CollectionProperties.

> Allow Routed Aliases to use Collection Properties instead of core properties
> ----------------------------------------------------------------------------
>
>                 Key: SOLR-13420
>                 URL: https://issues.apache.org/jira/browse/SOLR-13420
>             Project: Solr
>          Issue Type: Sub-task
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: SolrCloud
>    Affects Versions: master (9.0)
>            Reporter: Gus Heck
>            Assignee: Gus Heck
>            Priority: Major
>         Attachments: SOLR-13420.patch
>
>
> The current routed alias code is relying on a core property named routedAliasName to detect when the Routed Alias wrapper URP should be applied to Distributed Update Request Processor. 
> {code:java}
> #Written by CorePropertiesLocator
> #Sun Mar 03 06:21:14 UTC 2019
> routedAliasName=testalias21
> numShards=2
> collection.configName=_default
> ... etc...
> {code}
> Core properties are not changeable after the core is created, and they are written to the file system for every core. To support a unit test for SOLR-13419 I need to create some legacy formatted collection names, and arrange them into a TRA, but this is impossible due to the fact that I can't change the core property from the test. There's a TODO dating back to the original TRA implementation in the routed alias code to switch to collection properties instead, so this ticket will address that TOD to support the test required for SOLR-13419.
> Back compatibility with legacy core based TRA's and CRA's will of course be maintained. I also expect that this will facilitate some more nimble handling or routed aliases with future auto-scaling capabilities such as possibly detaching and archiving collections to cheaper, slower machines rather than deleting them. (presently such a collection would still attempt to use the routed alias if it received an update even if it were no longer in the list of collections for the alias)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org