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

Alexey Kuznetsov commented on IGNITE-8777:
------------------------------------------

[~Chandresh Pancholi] You need to add more tests to 
JettyRestProcessorAbstractSelfTest class.
For example with names testMetadataOneNode(), testMetadataManyNodes() + helper 
method checkMetadata(int nodesCnt)
{code}
private void checkMetadata(int nodesCnt) {
 ... test logic ...
}

private void testMetadataOneNode() {
 checkMetadata(1);
}

private void testMetadataManyNodes() {
 checkMetadata(2);
}
{code}

Note, you will need to rework method int gridCount() to be able return needed 
value.

> REST: metadata command failed on cluster of size 1.
> ---------------------------------------------------
>
>                 Key: IGNITE-8777
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8777
>             Project: Ignite
>          Issue Type: Improvement
>          Components: rest
>    Affects Versions: 2.5
>            Reporter: Alexey Kuznetsov
>            Assignee: Chandresh Pancholi
>            Priority: Major
>              Labels: newbie
>
> Start *only one *node.
> Execute REST command: 
> http://localhost:8080/ignite?cmd=getorcreate&cacheName=myNewPartionedCache&backups=2
> Cache will be created.
> Execute 
> http://localhost:8080/ignite?cmd=metadata&cacheName=myNewPartionedCache
> Error will be returned:  {“successStatus”:1,“error”:“Failed to handle 
> request: [req=CACHE_METADATA, err=Failed to request meta data. 
> myNewPartionedCache is not found]“,”response”:null,“sessionToken”:null}
> After some debug, I see in code GridCacheCommandHandler.MetadataTask#map:
> {code}
> ...
> for (int i = 1; i < subgrid.size(); i++) {
>  ....
> }
> if (map.isEmpty())
>                     throw new IgniteException("Failed to request meta data. " 
> + cacheName + " is not found");
> ...
> {code}
> So, in case of cluster with only one node this code will throw exception.
> I guess the fix should be - just replace "int i = 1" with "int i = 0".



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

Reply via email to