You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2013/10/02 14:23:16 UTC
svn commit: r1528441 - in /lucene/dev/branches/branch_4x: ./ solr/
solr/CHANGES.txt solr/core/
solr/core/src/java/org/apache/solr/cloud/Overseer.java
solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java
Author: shalin
Date: Wed Oct 2 12:23:16 2013
New Revision: 1528441
URL: http://svn.apache.org/r1528441
Log:
SOLR-5296: Creating a collection with implicit router adds shard ranges to each shard
Modified:
lucene/dev/branches/branch_4x/ (props changed)
lucene/dev/branches/branch_4x/solr/ (props changed)
lucene/dev/branches/branch_4x/solr/CHANGES.txt (contents, props changed)
lucene/dev/branches/branch_4x/solr/core/ (props changed)
lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/Overseer.java
lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java
Modified: lucene/dev/branches/branch_4x/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/CHANGES.txt?rev=1528441&r1=1528440&r2=1528441&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/CHANGES.txt (original)
+++ lucene/dev/branches/branch_4x/solr/CHANGES.txt Wed Oct 2 12:23:16 2013
@@ -53,6 +53,9 @@ Bug Fixes
* SOLR-5295: The CREATESHARD collection API creates maxShardsPerNode number of
replicas if replicationFactor is not specified. (Brett Hoerner, shalin)
+* SOLR-5296: Creating a collection with implicit router adds shard ranges
+ to each shard. (shalin)
+
Security
----------------------
Modified: lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/Overseer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/Overseer.java?rev=1528441&r1=1528440&r2=1528441&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/Overseer.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/Overseer.java Wed Oct 2 12:23:16 2013
@@ -413,10 +413,11 @@ public class Overseer {
}
private ClusterState createCollection(ClusterState state, String collectionName, List<String> shards , ZkNodeProps message) {
- log.info("Create collection {} with shards {}", collectionName, shards);;
+ log.info("Create collection {} with shards {}", collectionName, shards);
-// String routerName = message.getStr(OverseerCollectionProcessor.ROUTER,DocRouter.DEFAULT_NAME);
- DocRouter router = DocRouter.getDocRouter(message.getStr(OverseerCollectionProcessor.ROUTER,DocRouter.DEFAULT_NAME));
+ Map<String, Object> routerSpec = DocRouter.getRouterSpec(message);
+ String routerName = routerSpec.get("name") == null ? DocRouter.DEFAULT_NAME : (String) routerSpec.get("name");
+ DocRouter router = DocRouter.getDocRouter(routerName);
List<DocRouter.Range> ranges = router.partitionRange(shards.size(), router.fullRange());
@@ -447,7 +448,7 @@ public class Overseer {
}
if(val != null) collectionProps.put(e.getKey(),val);
}
- collectionProps.put(DocCollection.DOC_ROUTER, DocRouter.getRouterSpec(message));
+ collectionProps.put(DocCollection.DOC_ROUTER, routerSpec);
DocCollection newCollection = new DocCollection(collectionName, newSlices, collectionProps, router);
Modified: lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java?rev=1528441&r1=1528440&r2=1528441&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java Wed Oct 2 12:23:16 2013
@@ -220,6 +220,8 @@ public class CustomCollectionTest extend
assertEquals("implicit", ((Map)coll.get(ROUTER)).get("name") );
assertNotNull(coll.getStr(REPLICATION_FACTOR));
assertNotNull(coll.getStr(MAX_SHARDS_PER_NODE));
+ assertNull("A shard of a Collection configured with implicit router must have null range",
+ coll.getSlice("a").getRange());
List<String> collectionNameList = new ArrayList<String>();
collectionNameList.addAll(collectionInfos.keySet());