You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2015/01/22 15:08:50 UTC

svn commit: r1653866 - in /lucene/dev/branches/lucene_solr_5_0: ./ solr/ solr/solrj/ solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java

Author: noble
Date: Thu Jan 22 14:08:49 2015
New Revision: 1653866

URL: http://svn.apache.org/r1653866
Log:
SOLR-6521 use murmurhash because hashCode can give -ve val

Modified:
    lucene/dev/branches/lucene_solr_5_0/   (props changed)
    lucene/dev/branches/lucene_solr_5_0/solr/   (props changed)
    lucene/dev/branches/lucene_solr_5_0/solr/solrj/   (props changed)
    lucene/dev/branches/lucene_solr_5_0/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java

Modified: lucene/dev/branches/lucene_solr_5_0/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_5_0/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java?rev=1653866&r1=1653865&r2=1653866&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_5_0/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java (original)
+++ lucene/dev/branches/lucene_solr_5_0/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java Thu Jan 22 14:08:49 2015
@@ -46,6 +46,7 @@ import org.apache.solr.common.params.Mod
 import org.apache.solr.common.params.ShardParams;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.params.UpdateParams;
+import org.apache.solr.common.util.Hash;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SolrjNamedThreadFactory;
 import org.apache.solr.common.util.StrUtils;
@@ -1096,7 +1097,7 @@ public class CloudSolrClient extends Sol
       return ref.get();
     }
     List locks = this.locks;
-    final Object lock = locks.get(collection.hashCode() % locks.size());
+    final Object lock = locks.get(Hash.murmurhash3_x86_32(collection, 0, collection.length(), 0) % locks.size());
     synchronized (lock){
       //we have waited for sometime just check once again
       col = getFromCache(collection);