[
https://issues.apache.org/jira/browse/SOLR-11030?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16079238#comment-16079238
]
Jason Gerlowski edited comment on SOLR-11030 at 7/8/17 5:26 PM:
----------------------------------------------------------------
Took a quick stab at this, to at least show what it could look like.
Of course, currently the test fails with the message:
"java.lang.AssertionError: All CollectionActions must have V2 mappings.
Currently unmapped: CREATESNAPSHOT, DELETENODE, DELETESNAPSHOT, MOVEREPLICA,
MIGRATESTATEFORMAT, REPLACENODE, LISTSNAPSHOTS"
This failure is at least partially expected: SOLR-11027, SOLR-11028, and
SOLR-11029 involve creating v2 equivalents of MOVEREPLICA, DELETENODE, and
REPLACENODE respectively. And I suspect that MIGRATESTATEFORMAT should also
have a JIRA to get a v2 mapping created.
That leaves the *SNAPSHOT internal commands, which aren't real APIs afaik. I
plan to add them to the list of exempted CollectionActions in the test, but I
know very little about the Overseer, so I figured I'd mention it here first so
someone can correct me if this is wrong.
As a side note, this test could be cleaner if the CollectionActions enum had an
{{isApi}} boolean field to differentiate the true APIs from internal commands.
Wanted to see if anyone had any thoughts on doing that as a part of this patch.
was (Author: gerlowskija):
Took a quick stab at this, to at least show what it could look like.
Of course, currently the test fails with the message:
"java.lang.AssertionError: All CollectionActions must have V2 mappings.
Currently unmapped: CREATESNAPSHOT, DELETENODE, DELETESNAPSHOT, MOVEREPLICA,
MIGRATESTATEFORMAT, REPLACENODE, LISTSNAPSHOTS"
This failure is at least partially expected: SOLR 11027, SOLR-11028, and
SOLR-11029 involve creating v2 equivalents of MOVEREPLICA, DELETENODE, and
REPLACENODE respectively. And I suspect that MIGRATESTATEFORMAT should also
have a JIRA to get a v2 mapping created.
That leaves the *SNAPSHOT internal commands, which aren't real APIs afaik. I
plan to add them to the list of exempted CollectionActions in the test, but I
know very little about the Overseer, so I figured I'd mention it here first so
someone can correct me if this is wrong.
As a side note, this test could be cleaner if the CollectionActions enum had an
{{isApi}} boolean field to differentiate the true APIs from internal commands.
Wanted to see if anyone had any thoughts on doing that as a part of this patch.
> Add a test that fails if a collection API has no corresponding v2 API mapping
> in CollectionApiMapping class
> -----------------------------------------------------------------------------------------------------------
>
> Key: SOLR-11030
> URL: https://issues.apache.org/jira/browse/SOLR-11030
> Project: Solr
> Issue Type: Improvement
> Security Level: Public(Default Security Level. Issues are Public)
> Components: SolrCloud, v2 API
> Reporter: Shalin Shekhar Mangar
> Fix For: master (8.0), 7.1
>
> Attachments: SOLR-11030.patch
>
>
> A few recently added collection APIs had no equivalent v2 endpoints. We
> should add a test that fails if a collection API has no corresponding v2 API
> mapping in CollectionApiMapping class so that it is no longer possible to
> write a v1 API without a v2 counterpart.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]