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 2018/01/08 08:34:21 UTC

lucene-solr:master: SOLR-11821: ConcurrentModificationException in SimSolrCloudTestCase.tearDown

Repository: lucene-solr
Updated Branches:
  refs/heads/master 7695544a5 -> 3d8ef981c


SOLR-11821: ConcurrentModificationException in SimSolrCloudTestCase.tearDown


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

Branch: refs/heads/master
Commit: 3d8ef981cbe150d5f443ee15081b3fff2a6ab50e
Parents: 7695544
Author: Shalin Shekhar Mangar <sh...@apache.org>
Authored: Mon Jan 8 14:04:11 2018 +0530
Committer: Shalin Shekhar Mangar <sh...@apache.org>
Committed: Mon Jan 8 14:04:11 2018 +0530

----------------------------------------------------------------------
 solr/CHANGES.txt                                    |  1 +
 .../cloud/autoscaling/sim/SimSolrCloudTestCase.java | 16 ++++++++++------
 2 files changed, 11 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/3d8ef981/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 4b4820c..011766f 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -88,6 +88,7 @@ Bug Fixes
 
 * SOLR-11824: Fixed bucket ordering in distributed json.facet type:range when mincount>0 (hossman)
 
+* SOLR-11821: ConcurrentModificationException in SimSolrCloudTestCase.tearDown (shalin)
 
 Optimizations
 ----------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/3d8ef981/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/SimSolrCloudTestCase.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/SimSolrCloudTestCase.java b/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/SimSolrCloudTestCase.java
index 77ddbc0..48d46b6 100644
--- a/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/SimSolrCloudTestCase.java
+++ b/solr/core/src/test/org/apache/solr/cloud/autoscaling/sim/SimSolrCloudTestCase.java
@@ -138,13 +138,17 @@ public class SimSolrCloudTestCase extends SolrTestCaseJ4 {
       cluster.simGetOpCounts().forEach((k, cnt) -> log.info("##\t\t- " + String.format(Locale.ROOT, "%-14s  %4d", k, cnt.get())));
       log.info("######### Autoscaling event counts ###########");
       TreeMap<String, Map<String, AtomicInteger>> counts = new TreeMap<>();
-      for (SolrInputDocument d : cluster.simGetSystemCollection()) {
-        if (!"autoscaling_event".equals(d.getFieldValue("type"))) {
-          continue;
+
+      List<SolrInputDocument> solrInputDocuments = cluster.simGetSystemCollection();
+      synchronized (solrInputDocuments) {
+        for (SolrInputDocument d : solrInputDocuments) {
+          if (!"autoscaling_event".equals(d.getFieldValue("type"))) {
+            continue;
+          }
+          counts.computeIfAbsent((String)d.getFieldValue("event.source_s"), s -> new TreeMap<>())
+              .computeIfAbsent((String)d.getFieldValue("stage_s"), s -> new AtomicInteger())
+              .incrementAndGet();
         }
-        counts.computeIfAbsent((String)d.getFieldValue("event.source_s"), s -> new TreeMap<>())
-            .computeIfAbsent((String)d.getFieldValue("stage_s"), s -> new AtomicInteger())
-            .incrementAndGet();
       }
       counts.forEach((trigger, map) -> {
         log.info("## * Trigger: " + trigger);