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);