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 2016/07/25 15:44:35 UTC

[1/2] lucene-solr:branch_6x: SOLR-9334: CloudSolrClient.collectionStateCache is unbounded

Repository: lucene-solr
Updated Branches:
  refs/heads/branch_6x 686f67d9a -> 501d73b4b


SOLR-9334: CloudSolrClient.collectionStateCache is unbounded


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a30084ec
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a30084ec
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a30084ec

Branch: refs/heads/branch_6x
Commit: a30084ec820c483d6109e191f1aab7e93668420b
Parents: 89a1fe6
Author: Noble Paul <no...@apache.org>
Authored: Mon Jul 25 21:13:35 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Mon Jul 25 21:13:35 2016 +0530

----------------------------------------------------------------------
 solr/CHANGES.txt                                |  3 +++
 .../solr/client/solrj/impl/CloudSolrClient.java | 23 +++++++++++++++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a30084ec/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 1e9c775..5ece79c 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -123,6 +123,9 @@ Bug Fixes
 
 * SOLR-9285: Fixed AIOOBE when using ValueSourceAugmenter in single node RTG (hossman)
 
+* SOLR-9334: CloudSolrClient.collectionStateCache is unbounded (noble)
+
+
 Optimizations
 ----------------------
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a30084ec/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java
index 583b42d..ec3f837 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/impl/CloudSolrClient.java
@@ -38,6 +38,8 @@ import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
+import java.util.concurrent.locks.Lock;
+import java.util.concurrent.locks.ReentrantLock;
 
 import org.apache.http.NoHttpResponseException;
 import org.apache.http.client.HttpClient;
@@ -147,10 +149,16 @@ public class CloudSolrClient extends SolrClient {
 
 
   protected final Map<String, ExpiringCachedDocCollection> collectionStateCache = new ConcurrentHashMap<String, ExpiringCachedDocCollection>(){
+    final Lock evictLock = new ReentrantLock(true);
     @Override
     public ExpiringCachedDocCollection get(Object key) {
       ExpiringCachedDocCollection val = super.get(key);
-      if(val == null) return null;
+      if(val == null) {
+        // a new collection is likely to be added now.
+        //check if there are stale items and remove them
+        evictStale();
+        return null;
+      }
       if(val.isExpired(timeToLive)) {
         super.remove(key);
         return null;
@@ -158,6 +166,19 @@ public class CloudSolrClient extends SolrClient {
       return val;
     }
 
+    void evictStale() {
+      if(!evictLock.tryLock()) return;
+      try {
+        for (Entry<String, ExpiringCachedDocCollection> e : entrySet()) {
+          if(e.getValue().isExpired(timeToLive)){
+            super.remove(e.getKey());
+          }
+        }
+      } finally {
+        evictLock.unlock();
+      }
+    }
+
   };
 
   class ExpiringCachedDocCollection {


[2/2] lucene-solr:branch_6x: Merge remote-tracking branch 'origin/branch_6x' into branch_6x

Posted by no...@apache.org.
Merge remote-tracking branch 'origin/branch_6x' into branch_6x

Conflicts:
	solr/CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/501d73b4
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/501d73b4
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/501d73b4

Branch: refs/heads/branch_6x
Commit: 501d73b4b83138f4135a91978cbe35f781d4832b
Parents: a30084e 686f67d
Author: Noble Paul <no...@apache.org>
Authored: Mon Jul 25 21:14:17 2016 +0530
Committer: Noble Paul <no...@apache.org>
Committed: Mon Jul 25 21:14:17 2016 +0530

----------------------------------------------------------------------
 lucene/CHANGES.txt                              |   24 +
 .../simpletext/SimpleTextPointsWriter.java      |    4 +-
 .../org/apache/lucene/codecs/PointsWriter.java  |   11 +-
 .../codecs/lucene60/Lucene60PointsWriter.java   |   15 +-
 .../org/apache/lucene/document/FieldType.java   |    2 +-
 .../lucene/index/DocumentsWriterPerThread.java  |    2 +-
 .../org/apache/lucene/index/IndexWriter.java    |    2 +-
 .../lucene/index/LiveIndexWriterConfig.java     |   19 +-
 .../apache/lucene/index/PointValuesWriter.java  |    6 +-
 .../lucene/search/LeafFieldComparator.java      |    7 +-
 .../org/apache/lucene/search/TermQuery.java     |   58 +-
 .../search/spans/ScoringWrapperSpans.java       |   95 --
 .../lucene/search/spans/SpanNotQuery.java       |    2 +-
 .../apache/lucene/search/spans/SpanOrQuery.java |    2 +-
 .../apache/lucene/search/spans/SpanWeight.java  |    2 +-
 .../org/apache/lucene/util/bkd/BKDWriter.java   |    2 +-
 .../lucene60/TestLucene60PointsFormat.java      |    5 +-
 .../apache/lucene/index/TestPointValues.java    |    3 +-
 .../apache/lucene/search/TestPointQueries.java  |    5 +-
 .../org/apache/lucene/search/TestTermQuery.java |  154 ++
 .../apache/lucene/index/memory/MemoryIndex.java |   24 +-
 .../lucene/index/memory/TestMemoryIndex.java    |   14 +
 .../lucene/queryparser/xml/CoreParser.java      |    2 +
 .../org/apache/lucene/replicator/nrt/Node.java  |   19 +-
 .../lucene/replicator/nrt/PrimaryNode.java      |    5 +
 .../lucene/document/DoubleRangeField.java       |  262 ++++
 .../apache/lucene/document/RangeFieldQuery.java |  315 ++++
 .../lucene/document/TestDoubleRangeField.java   |   67 +
 .../search/BaseRangeFieldQueryTestCase.java     |  427 ++++++
 .../search/TestDoubleRangeFieldQueries.java     |  106 ++
 .../apache/lucene/spatial3d/TestGeo3DPoint.java |    5 +-
 .../codecs/asserting/AssertingPointsFormat.java |    4 +-
 .../codecs/cranky/CrankyPointsFormat.java       |    4 +-
 .../apache/lucene/geo/BaseGeoPointTestCase.java |    3 +-
 .../org/apache/lucene/index/RandomCodec.java    |    9 +-
 solr/CHANGES.txt                                |    7 +
 .../solr/hadoop/MorphlineBasicMiniMRTest.java   |    2 +
 .../solr/hadoop/MorphlineGoLiveMiniMRTest.java  |    2 +
 .../org/apache/solr/handler/SQLHandler.java     |    5 +-
 .../solr/handler/admin/CollectionsHandler.java  |  897 +++++------
 .../solr/handler/admin/CoreAdminHandler.java    |    9 +-
 .../solr/handler/admin/CoreAdminOperation.java  | 1406 +++++++++---------
 .../handler/component/RealTimeGetComponent.java |  144 +-
 .../transform/DocIdAugmenterFactory.java        |   10 +-
 .../org/apache/solr/search/SolrCoreParser.java  |   40 +-
 .../apache/solr/search/SolrQueryBuilder.java    |   34 +
 .../apache/solr/search/XmlQParserPlugin.java    |   11 +
 .../apache/solr/update/IndexFingerprint.java    |    2 +
 .../conf/solrconfig-testxmlparser.xml           |   33 +
 .../apache/solr/cloud/TestRandomFlRTGCloud.java |   68 +-
 .../apache/solr/search/GoodbyeQueryBuilder.java |   39 +
 .../apache/solr/search/HandyQueryBuilder.java   |   53 +
 .../apache/solr/search/HelloQueryBuilder.java   |   39 +
 .../solr/search/TestPseudoReturnFields.java     |   60 +-
 .../solr/search/TestXmlQParserPlugin.java       |   78 +
 .../client/solrj/io/stream/CloudSolrStream.java |   25 +-
 .../client/solrj/io/stream/TopicStream.java     |   16 +-
 .../apache/solr/common/cloud/ClusterState.java  |   13 +-
 58 files changed, 3122 insertions(+), 1557 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/501d73b4/solr/CHANGES.txt
----------------------------------------------------------------------
diff --cc solr/CHANGES.txt
index 5ece79c,6479c71..13e528d
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@@ -123,9 -126,10 +126,13 @@@ Bug Fixe
  
  * SOLR-9285: Fixed AIOOBE when using ValueSourceAugmenter in single node RTG (hossman)
  
+ * SOLR-9288: Fix [docid] transformer to return -1 when used in RTG with uncommitted doc (hossman)
+ 
+ * SOLR-9309: Fix SolrCloud RTG response structure when multi ids requested but only 1 found (hossman)
+ 
 +* SOLR-9334: CloudSolrClient.collectionStateCache is unbounded (noble)
 +
 +
  Optimizations
  ----------------------