Shalin Shekhar Mangar created SOLR-5321:
-------------------------------------------
Summary: Overseer.updateState tries to use router name from
message but none is sent
Key: SOLR-5321
URL: https://issues.apache.org/jira/browse/SOLR-5321
Project: Solr
Issue Type: Bug
Components: SolrCloud
Affects Versions: 4.5
Reporter: Shalin Shekhar Mangar
Assignee: Shalin Shekhar Mangar
Priority: Minor
Fix For: 5.0, 4.6
Overseer.updateSlice method has the following code:
{code}
String router =
message.getStr(OverseerCollectionProcessor.ROUTER,DocRouter.DEFAULT_NAME);
List<String> shardNames = new ArrayList<String>();
//collection does not yet exist, create placeholders if num shards is
specified
boolean collectionExists = state.getCollections().contains(collection);
if (!collectionExists && numShards!=null) {
if(ImplicitDocRouter.NAME.equals(router)){
getShardNames(shardNames, message.getStr("shards",null));
numShards = shardNames.size();
}else {
getShardNames(numShards, shardNames);
}
state = createCollection(state, collection, shardNames, message);
}
{code}
Here it tries to read the router name from the message. Even if we ignore that
the key to lookup the router is wrong here, the router name is never sent in a
state message.
Considering that we don't even support creating a collection with "implicit"
router from command line, we should stop expecting the parameter.
--
This message was sent by Atlassian JIRA
(v6.1#6144)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]