You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Alexey Kuznetsov (JIRA)" <ji...@apache.org> on 2018/06/13 04:20:00 UTC
[jira] [Created] (IGNITE-8777) REST: metadata command failed on
cluster of size 1.
Alexey Kuznetsov created IGNITE-8777:
----------------------------------------
Summary: 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
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)