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

Gregory Chanan commented on SOLR-8054:
--------------------------------------

Thanks for the responses [[email protected]] and [[email protected]].

bq. Thinking about a view config API like this, I think I'd want some way to 
get an individual file or all the files (as a zip, in one stream, whatever ends 
up making sense) depending on param.

I think both individual file and all file APIs make sense.  For the all file 
APIs, I'm not sure whether as a zip or all in one stream makes more sense.  Is 
there an existing API where we provide multiple files in one stream?  I'd 
rather follow that logic than make something up myself.

{quote}
Should uploading (cloning) configsets be taken into consideration here?
{quote}

Yes, but I've tried to stay away from exposing file-modication based APIs 
directly in Solr due to the security issues discussed in SOLR-5287 / SOLR-5539. 
 One approach to thinking about this is to break the operations into tasks a 
cluster-level administrator would do vs tasks an individual would do and seeing 
if we can do the later without file-based APIs.

bq. Downloading the config for the purposes of making a backup, with the 
ability to restore it later after trying some different things

This falls into tasks an individual would do.  An individual could do this 
today via cloning their copy via the ConfigSet API and "restoring" via 
deleting/copying the old one.  That's not super easy, but you could provide a 
nicer interface by say, keeping track of the changes with version numbers and 
letting you restore from version number.  So I don't think this strictly needs 
a file-based API.

bq. Essentially cloning a config in a different cluster (testing, 
troubleshooting, etc)

That's an interesting use case because it's sort of between what a user would 
do and what an administrator would do.  One possibility is to have some 
higher-level cross-cluster replication functionality that lets you replicate 
configs to another cluster.  You could imagine this happening on all configs or 
some subset.  Alternatively, if the user is an administrator of the backup 
cluster (which seems likely here), there is nothing stopping you from using the 
existing ZkCLI commands.  That's just not feasible if ZK security is on and the 
user doing the operations doesn't have permissions, but that doesn't seem that 
likely in this case.

{quote}Both seem useful (If I'm correctly understanding what you mean by 
File-based). APIs may manipulate the state, but dealing with the persisted 
state as a whole also seems useful. For instance, cloning a config via config 
APIs that deal with individual settings seems difficult.{quote}

Yes, that's a good point.  Hopefully the above makes sense -- provide Solr APIs 
for end users and have administrators use the ZkCLI.


> Add a GET command to ConfigSets API
> -----------------------------------
>
>                 Key: SOLR-8054
>                 URL: https://issues.apache.org/jira/browse/SOLR-8054
>             Project: Solr
>          Issue Type: New Feature
>          Components: SolrCloud
>            Reporter: Gregory Chanan
>            Assignee: Gregory Chanan
>
> It would be useful to have a command that allows you to view a ConfigSet via 
> the API rather than going to zookeeper directly.  Mainly for security 
> reasons, e.g.
> - solr may have different security requirements than the ZNodes e.g. only 
> solr can view znodes but any authenticated user can call ConfigSet API
> - it's nicer than pointing to the web UI and using the zookeeper viewer, 
> because of the same security concerns as above and that you don't have to 
> know the internal zookeeper paths.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to