[
https://issues.apache.org/jira/browse/SOLR-11487?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16215845#comment-16215845
]
David Smiley commented on SOLR-11487:
-------------------------------------
Thanks for the patch Gus!
* I think just String values is fine; it's like a Properties object. Therefore
you could change the type of the aliasMap field to what it was
(Map,String,Map<String,String>>?
* Why change Collections.emptyMap() to Collections.EMPTY_MAP ? The latter
results in Java unchecked assignment warnings. Speaking of which, can you
please address such warnings?
* getCollectionMetadataMap needs some docs. Can result be null?
* setAliasMetadata:
** would you mind changing the "key" param name to "keyMetadata" and "metadata"
param name to "valueMetadata" (or shorter "Meta" instead of "Metadata" if you
choose)? That would read clearer to me.
** setAliasMetadata doesn't have "collection" in its name. Likewise the
aliasMetadataField should be qualified as well. Or... we stop pretending at
the class level that we support other alias types, yet continue to read/write
with the "collection" prefix in case we actually do add new types later?
** oh... hey this method makes Aliases not immutable anymore. Maybe change
this to be something like cloneWithCollectionAliasMetadata? Or we cold make
immutable again but I admit Immutability is a nice property here.
* cloneWithCollectionAlias seems off; I don't think it should be using
zkStateReader. I think this method now needs a metadata map parameter
(optional). Furthermore, if we remove an alias, remove the corresponding
metadata too.
I see you moved some alias CRUD stuff to ZkStateReader. Just curious; what
drove that decision?
TimeOut: do you envision other uses of this utility; what in particular?
> Collection Alias metadata for time partitioned collections
> ----------------------------------------------------------
>
> Key: SOLR-11487
> URL: https://issues.apache.org/jira/browse/SOLR-11487
> Project: Solr
> Issue Type: Sub-task
> Security Level: Public(Default Security Level. Issues are Public)
> Components: SolrCloud
> Reporter: David Smiley
> Attachments: SOLR_11487.patch, SOLR_11487.patch
>
>
> SOLR-11299 outlines an approach to using a collection Alias to refer to a
> series of collections of a time series. We'll need to store some metadata
> about these time series collections, such as which field of the document
> contains the timestamp to route on.
> The current {{/aliases.json}} is a Map with a key {{collection}} which is in
> turn a Map of alias name strings to a comma delimited list of the collections.
> _If we change the comma delimited list to be another Map to hold the existing
> list and more stuff, older CloudSolrClient (configured to talk to ZooKeeper)
> will break_. Although if it's configured with an HTTP Solr URL then it would
> not break. There's also some read/write hassle to worry about -- we may need
> to continue to read an aliases.json in the older format.
> Alternatively, we could add a new map entry to aliases.json, say,
> {{collection_metadata}} keyed by alias name?
> Perhaps another very different approach is to attach metadata to the
> configset in use?
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]