lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SOLR-11722) API to create a Time Routed Alias and first collection
Date Fri, 12 Jan 2018 07:36:02 GMT

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

ASF GitHub Bot commented on SOLR-11722:
---------------------------------------

Github user fsparv commented on a diff in the pull request:

    https://github.com/apache/lucene-solr/pull/304#discussion_r161155263
  
    --- Diff: solr/core/src/java/org/apache/solr/handler/admin/CollectionsHandler.java ---
    @@ -962,6 +982,76 @@ public static CollectionOperation get(CollectionAction action) {
         }
       }
     
    +  private static SolrParams convertToV1WhenRequired(SolrQueryRequest req, ModifiableSolrParams
params) {
    +    SolrParams v1Params = params; // (maybe...)
    +
    +    // in the v2 world we get a data map based on the json request, from the CommandOperation
associated
    +    // with the request, so locate that if we can.. if we find it we have to translate
the v2 request
    +    // properties to v1 params, otherwise we're already good to go.
    +    List<CommandOperation> cmds = req.getCommands(true);
    +    if (cmds.size() > 1) {
    +      // todo: not sure if this is the right thing to do here, but also not sure what
to do if there is more than one...
    +      throw new SolrException(BAD_REQUEST, "Only one command is allowed when creating
a routed alias");
    +    }
    +    CommandOperation c = cmds.size() == 0 ? null : cmds.get(0);
    +    if (c != null) {  // v2 api, do conversion to v1
    +      v1Params = new BaseHandlerApiSupport.V2ToV1SolrParams(CollectionApiMapping.Meta.CREATE_COLLECTION,
    +              req.getPathTemplateValues(), true, params,
    +              new CommandOperation("create", c.getDataMap().get("create-collection")));
    +    }
    +    return v1Params;
    +  }
    +
    +  private static Map<String, Object> parseColletionCreationProps(CollectionsHandler
h, SolrParams params, String prefix)
    --- End diff --
    
    fixed in update


> API to create a Time Routed Alias and first collection
> ------------------------------------------------------
>
>                 Key: SOLR-11722
>                 URL: https://issues.apache.org/jira/browse/SOLR-11722
>             Project: Solr
>          Issue Type: Sub-task
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: SolrCloud
>            Reporter: David Smiley
>         Attachments: SOLR-11722.patch, SOLR-11722.patch
>
>
> This issue is about creating a single API command to create a "Time Routed Alias" along
with its first collection.  Need to decide what endpoint URL it is and parameters.
> Perhaps in v2 it'd be {{/api/collections?command=create-routed-alias}} or alternatively
piggy-back off of command=create-alias but we add more options, perhaps with a prefix like
"router"?
> Inputs:
> * alias name
> * misc collection creation metadata (e.g. config, numShards, ...) perhaps in this context
with a prefix like "collection."
> * metadata for TimeRoutedAliasUpdateProcessor, currently: router.field
> * date specifier for first collection; can include "date math".
> We'll certainly add more options as future features unfold.
> I believe the collection needs to be created first (referring to the alias name via a
core property), and then the alias pointing to it which demands collections exist first. 
When figuring the collection name, you'll need to reference the format in TimeRoutedAliasUpdateProcessor.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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


Mime
View raw message