You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2020/08/17 23:12:17 UTC

[lucene-solr] 47/49: @561 Consider the coconut (the what?) Consider its tree We use each part of the coconut That's all we need

This is an automated email from the ASF dual-hosted git repository.

markrmiller pushed a commit to branch reference_impl
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 920b822d64e323f950848d01e02ab315ffbc13c5
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Sun Aug 16 22:05:47 2020 -0500

    @561 Consider the coconut (the what?)
    Consider its tree
    We use each part of the coconut
    That's all we need
---
 .../test/org/apache/solr/TestDocumentBuilder.java  |   6 +-
 .../test/org/apache/solr/cloud/AddReplicaTest.java |   2 +-
 .../cloud/ConcurrentCreateRoutedAliasTest.java     |   2 +-
 .../apache/solr/cloud/DocValuesNotIndexedTest.java |   2 +-
 .../org/apache/solr/cloud/LeaderElectionTest.java  |   1 -
 .../OverseerCollectionConfigSetProcessorTest.java  |  14 +--
 .../test/org/apache/solr/cloud/OverseerTest.java   |   4 -
 .../org/apache/solr/cloud/RollingRestartTest.java  |   6 -
 .../apache/solr/cloud/SolrCloudBridgeTestCase.java |  13 +--
 .../apache/solr/cloud/TestCloudConsistency.java    |   1 -
 .../org/apache/solr/cloud/TestPullReplica.java     | 126 +++++++++++----------
 .../solr/cloud/TrollingIndexReaderFactory.java     |   1 -
 .../src/test/org/apache/solr/cloud/ZkCLITest.java  |   7 --
 .../org/apache/solr/cloud/ZkNodePropsTest.java     |   1 -
 .../api/collections/CollectionReloadTest.java      |   2 -
 .../solr/cloud/api/collections/ShardSplitTest.java |   2 -
 .../cloud/api/collections/TestCollectionAPI.java   |   2 +-
 .../apache/solr/cloud/cdcr/CdcrBootstrapTest.java  |   2 -
 .../solr/handler/TestSolrConfigHandlerCloud.java   |   1 -
 .../solr/handler/tagger/RandomizedTaggerTest.java  |  12 +-
 .../apache/solr/internal/csv/CSVPrinterTest.java   |   6 +-
 .../org/apache/solr/logging/TestLogWatcher.java    |   8 +-
 .../solr/response/TestBinaryResponseWriter.java    |   2 +-
 .../solr/response/TestCustomDocTransformer.java    |   2 +-
 .../response/TestJavabinTupleStreamParser.java     |   2 +-
 .../apache/solr/schema/CurrencyFieldTypeTest.java  |  11 +-
 .../solr/schema/TestBulkSchemaConcurrent.java      |   2 +-
 .../test/org/apache/solr/search/DocSetPerf.java    |   4 +-
 .../apache/solr/search/TestFilteredDocIdSet.java   |   4 +-
 .../test/org/apache/solr/search/TestFiltering.java |   2 +-
 .../test/org/apache/solr/search/TestReload.java    |   2 +-
 .../org/apache/solr/search/TestSearchPerf.java     |   4 +-
 .../src/test/org/apache/solr/search/TestSolrJ.java |  14 +--
 .../apache/solr/search/TestSolrQueryParser.java    |   2 +-
 .../apache/solr/search/facet/TestJsonFacets.java   |  30 ++---
 .../solr/search/join/TestCloudNestedDocsSort.java  |   6 +-
 .../solr/search/mlt/CloudMLTQParserTest.java       |   4 +-
 .../solr/search/stats/TestBaseStatsCache.java      |  14 +--
 .../solr/security/BasicAuthIntegrationTest.java    |   2 +-
 .../security/JWTVerificationkeyResolverTest.java   |   2 +-
 .../solr/spelling/SpellCheckCollatorTest.java      |   2 +-
 .../solr/store/blockcache/BlockCacheTest.java      |  24 ++--
 .../solr/store/blockcache/BlockDirectoryTest.java  |   2 +-
 .../apache/solr/store/hdfs/HdfsDirectoryTest.java  |   2 +-
 .../solr/update/PeerSyncWithBufferUpdatesTest.java |   2 +-
 .../PeerSyncWithIndexFingerprintCachingTest.java   |   4 +-
 .../AddSchemaFieldsUpdateProcessorFactoryTest.java |   2 +-
 .../DimensionalRoutedAliasUpdateProcessorTest.java |   4 +-
 .../processor/TestDocBasedVersionConstraints.java  |   2 +-
 .../TimeRoutedAliasUpdateProcessorTest.java        |   2 +-
 .../src/test/org/apache/solr/util/BitSetPerf.java  |   8 +-
 .../src/java/org/apache/solr/SolrTestCase.java     |  61 +++++-----
 52 files changed, 207 insertions(+), 238 deletions(-)

diff --git a/solr/core/src/test/org/apache/solr/TestDocumentBuilder.java b/solr/core/src/test/org/apache/solr/TestDocumentBuilder.java
index 8da8fe7..f430810 100644
--- a/solr/core/src/test/org/apache/solr/TestDocumentBuilder.java
+++ b/solr/core/src/test/org/apache/solr/TestDocumentBuilder.java
@@ -39,12 +39,12 @@ public class TestDocumentBuilder extends SolrTestCase {
     list.add(45);
     list.add(33);
     list.add(20);
-    doc.addField("field5", list);
+    //doc.addField("field5", list);
     
     SolrInputDocument clone = doc.deepCopy();
     
-    System.out.println("doc1: "+ doc);
-    System.out.println("clone: "+ clone);
+    //System.out.println("doc1: "+ doc);
+    //System.out.println("clone: "+ clone);
     
     assertNotSame(doc, clone);
     
diff --git a/solr/core/src/test/org/apache/solr/cloud/AddReplicaTest.java b/solr/core/src/test/org/apache/solr/cloud/AddReplicaTest.java
index e32340d..b50768e 100644
--- a/solr/core/src/test/org/apache/solr/cloud/AddReplicaTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/AddReplicaTest.java
@@ -165,7 +165,7 @@ public class AddReplicaTest extends SolrCloudTestCase {
     boolean success = false;
     for (int i = 0; i < 300; i++) {
       rsp = requestStatus.process(cloudClient);
-      System.out.println("resp:" + rsp);
+      //System.out.println("resp:" + rsp);
       if (rsp.getRequestStatus() == COMPLETED) {
         success = true;
         break;
diff --git a/solr/core/src/test/org/apache/solr/cloud/ConcurrentCreateRoutedAliasTest.java b/solr/core/src/test/org/apache/solr/cloud/ConcurrentCreateRoutedAliasTest.java
index 26c272b..3f86e60 100644
--- a/solr/core/src/test/org/apache/solr/cloud/ConcurrentCreateRoutedAliasTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/ConcurrentCreateRoutedAliasTest.java
@@ -116,7 +116,7 @@ public class ConcurrentCreateRoutedAliasTest extends SolrTestCaseJ4 {
 
     final CreateRoutedAliasThread[] threads = new CreateRoutedAliasThread[1];
     int numStart = num;
-    System.out.println("NUM ==> " +num);
+    //System.out.println("NUM ==> " +num);
     for (; num < threads.length + numStart; num++) {
       final String aliasName = "testAliasCplx" + num;
       final String baseUrl = solrCluster.getJettySolrRunners().get(0).getBaseUrl().toString();
diff --git a/solr/core/src/test/org/apache/solr/cloud/DocValuesNotIndexedTest.java b/solr/core/src/test/org/apache/solr/cloud/DocValuesNotIndexedTest.java
index 5cca652..9a1f153 100644
--- a/solr/core/src/test/org/apache/solr/cloud/DocValuesNotIndexedTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/DocValuesNotIndexedTest.java
@@ -468,7 +468,7 @@ public class DocValuesNotIndexedTest extends SolrCloudTestCase {
   private void doTestFacet(FieldProps props, QueryResponse rsp) {
     String name = props.getName();
     final List<FacetField.Count> counts = rsp.getFacetField(name).getValues();
-    System.out.println("rsp:" + rsp);
+    //System.out.println("rsp:" + rsp);
     long expectedCount = props.getExpectedCount();
     long foundCount = getCount(counts);
     assertEquals("Field " + name + " should have a count of " + expectedCount, expectedCount, foundCount);
diff --git a/solr/core/src/test/org/apache/solr/cloud/LeaderElectionTest.java b/solr/core/src/test/org/apache/solr/cloud/LeaderElectionTest.java
index b9a62aa..bb783e6 100644
--- a/solr/core/src/test/org/apache/solr/cloud/LeaderElectionTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/LeaderElectionTest.java
@@ -266,7 +266,6 @@ public class LeaderElectionTest extends SolrTestCaseJ4 {
         Thread.sleep(500);
       }
     }
-    zkClient.printLayoutToStream(System.out);
     throw new RuntimeException("Could not get leader props for " + collection + " " + slice);
   }
 
diff --git a/solr/core/src/test/org/apache/solr/cloud/OverseerCollectionConfigSetProcessorTest.java b/solr/core/src/test/org/apache/solr/cloud/OverseerCollectionConfigSetProcessorTest.java
index 64555bd..d78dfa1 100644
--- a/solr/core/src/test/org/apache/solr/cloud/OverseerCollectionConfigSetProcessorTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/OverseerCollectionConfigSetProcessorTest.java
@@ -335,7 +335,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     when(clusterStateMock.getLiveNodes()).thenReturn(liveNodes);
 
     when(solrZkClientMock.setData(anyString(), any(), anyInt(), anyBoolean())).then(invocation -> {
-      System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
+      //System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
       if (invocation.getArgument(1) == null) {
         zkClientData.put(invocation.getArgument(0), new byte[0]);
       } else {
@@ -380,7 +380,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     Mockito.doAnswer(
       new Answer<Void>() {
         public Void answer(InvocationOnMock invocation) {
-          System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
+          //System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
           if (invocation.getArgument(1) == null) {
             zkClientData.put(invocation.getArgument(0), new byte[0]);
           } else {
@@ -400,7 +400,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     });
     
     when(distribStateManagerMock.createData(any(), any(), any())).thenAnswer(invocation -> {
-      System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
+      //System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
       if (invocation.getArgument(1) == null) {
         zkClientData.put(invocation.getArgument(0), new byte[0]);
       } else {
@@ -415,7 +415,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     Mockito.doAnswer(
         new Answer<Void>() {
           public Void answer(InvocationOnMock invocation) {
-            System.out.println("set data: " + invocation.getArgument(0) + " " + new byte[0]);
+            //System.out.println("set data: " + invocation.getArgument(0) + " " + new byte[0]);
             zkClientData.put(invocation.getArgument(0), new byte[0]);
             return null;
           }}).when(distribStateManagerMock).makePath(anyString());
@@ -460,7 +460,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     Mockito.doAnswer(
       new Answer<Void>() {
         public Void answer(InvocationOnMock invocation) {
-          System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
+          //System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
           if (invocation.getArgument(1) == null) {
             zkClientData.put(invocation.getArgument(0), new byte[0]);
           } else {
@@ -480,7 +480,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     });
     
     when(distribStateManagerMock.createData(any(), any(), any())).thenAnswer(invocation -> {
-      System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
+      //System.out.println("set data: " + invocation.getArgument(0) + " " + invocation.getArgument(1));
       if (invocation.getArgument(1) == null) {
         zkClientData.put(invocation.getArgument(0), new byte[0]);
       } else {
@@ -495,7 +495,7 @@ public class OverseerCollectionConfigSetProcessorTest extends SolrTestCaseJ4 {
     Mockito.doAnswer(
         new Answer<Void>() {
           public Void answer(InvocationOnMock invocation) {
-            System.out.println("set data: " + invocation.getArgument(0) + " " + new byte[0]);
+            //System.out.println("set data: " + invocation.getArgument(0) + " " + new byte[0]);
             zkClientData.put(invocation.getArgument(0), new byte[0]);
             return null;
           }}).when(distribStateManagerMock).makePath(anyString());
diff --git a/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java b/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
index bf4f6b2..41f1e39 100644
--- a/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/OverseerTest.java
@@ -307,10 +307,6 @@ public class OverseerTest extends SolrTestCaseJ4 {
 
   @AfterClass
   public static void afterClass() throws Exception {
-    if (null != zkClient) {
-      zkClient.printLayoutToStream(System.out);
-    }
-
     System.clearProperty("solr.zkclienttimeout");
 
     if (null != server) {
diff --git a/solr/core/src/test/org/apache/solr/cloud/RollingRestartTest.java b/solr/core/src/test/org/apache/solr/cloud/RollingRestartTest.java
index 0505519..4933ade 100644
--- a/solr/core/src/test/org/apache/solr/cloud/RollingRestartTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/RollingRestartTest.java
@@ -59,8 +59,6 @@ public class RollingRestartTest extends AbstractFullDistribZkTestBase {
     assertNotNull(leader);
     log.info("Current overseer leader = {}", leader);
 
-    cloudClient.getZkStateReader().getZkClient().printLayoutToStream(System.out);
-
     int numDesignateOverseers = TEST_NIGHTLY ? 16 : 2;
     numDesignateOverseers = Math.max(getShardCount(), numDesignateOverseers);
     List<String> designates = new ArrayList<>();
@@ -76,8 +74,6 @@ public class RollingRestartTest extends AbstractFullDistribZkTestBase {
 
     waitUntilOverseerDesignateIsLeader(cloudClient.getZkStateReader().getZkClient(), designates, MAX_WAIT_TIME);
 
-    cloudClient.getZkStateReader().getZkClient().printLayoutToStream(System.out);
-
     boolean sawLiveDesignate = false;
     int numRestarts = 1 + random().nextInt(TEST_NIGHTLY ? 12 : 2);
     for (int i = 0; i < numRestarts; i++) {
@@ -121,8 +117,6 @@ public class RollingRestartTest extends AbstractFullDistribZkTestBase {
     leader = OverseerCollectionConfigSetProcessor.getLeaderNode(cloudClient.getZkStateReader().getZkClient());
     assertNotNull(leader);
     log.info("Current overseer leader (after restart) = {}", leader);
-
-    cloudClient.getZkStateReader().getZkClient().printLayoutToStream(System.out);
   }
 
   static boolean waitUntilOverseerDesignateIsLeader(SolrZkClient testZkClient, List<String> overseerDesignates, long timeoutInNanos) throws KeeperException, InterruptedException {
diff --git a/solr/core/src/test/org/apache/solr/cloud/SolrCloudBridgeTestCase.java b/solr/core/src/test/org/apache/solr/cloud/SolrCloudBridgeTestCase.java
index 46900eb..c216fa0 100644
--- a/solr/core/src/test/org/apache/solr/cloud/SolrCloudBridgeTestCase.java
+++ b/solr/core/src/test/org/apache/solr/cloud/SolrCloudBridgeTestCase.java
@@ -137,13 +137,10 @@ public abstract class SolrCloudBridgeTestCase extends SolrCloudTestCase {
   
   @Before
   public void beforeSolrCloudBridgeTestCase() throws Exception {
-    
-    System.out.println("Before Bridge");
+
     System.setProperty("solr.test.sys.prop1", "propone");
     System.setProperty("solr.test.sys.prop2", "proptwo");
     
-    System.out.println("Make cluster with shard count:" + numJettys);
-    
     cluster = configureCluster(numJettys).formatZk(formatZk).withJettyConfig(jettyCfg -> jettyCfg.withServlets(extraServlets).enableProxy(enableProxy)).build();
     
     SolrZkClient zkClient = cluster.getZkClient();
@@ -152,9 +149,6 @@ public abstract class SolrCloudBridgeTestCase extends SolrCloudTestCase {
       zkClient.uploadToZK(Paths.get(TEST_HOME()).resolve("collection1").resolve("conf"), "/configs" + "/" + "_default", filenameExclusions);
     }
     
-    zkClient.printLayoutToStream(System.out);
-    
-    
     if (schemaString != null) {
       //cloudClient.getZkStateReader().getZkClient().uploadToZK(TEST_PATH().resolve("collection1").resolve("conf").resolve(schemaString), "/configs/_default", null);
       if (zkClient.exists("/configs/_default/schema.xml")) {
@@ -190,10 +184,7 @@ public abstract class SolrCloudBridgeTestCase extends SolrCloudTestCase {
       SolrZkClient zkClientControl = controlCluster.getZkClient();
       
       zkClientControl.uploadToZK(TEST_PATH().resolve("collection1").resolve("conf"), "configs" + "/" + "_default", filenameExclusions);
-      
-      zkClientControl.printLayoutToStream(System.out);
-      
-      
+
       if (schemaString != null) {
         //cloudClient.getZkStateReader().getZkClient().uploadToZK(TEST_PATH().resolve("collection1").resolve("conf").resolve(schemaString), "/configs/_default", null);
         
diff --git a/solr/core/src/test/org/apache/solr/cloud/TestCloudConsistency.java b/solr/core/src/test/org/apache/solr/cloud/TestCloudConsistency.java
index e1263dc..6211bff 100644
--- a/solr/core/src/test/org/apache/solr/cloud/TestCloudConsistency.java
+++ b/solr/core/src/test/org/apache/solr/cloud/TestCloudConsistency.java
@@ -212,7 +212,6 @@ public class TestCloudConsistency extends SolrCloudTestCase {
     String baseUrl = shard1Leader.getBaseUrl();
     JettySolrRunner j1 = null;
     for (JettySolrRunner j : cluster.getJettySolrRunners()) {
-      System.out.println("cmp:" + j.getProxyBaseUrl() + " " + baseUrl);
       if (j.getProxyBaseUrl().toString().equals(baseUrl)) {
         j1 = j;
         break;
diff --git a/solr/core/src/test/org/apache/solr/cloud/TestPullReplica.java b/solr/core/src/test/org/apache/solr/cloud/TestPullReplica.java
index 6e7a861..5441dea 100644
--- a/solr/core/src/test/org/apache/solr/cloud/TestPullReplica.java
+++ b/solr/core/src/test/org/apache/solr/cloud/TestPullReplica.java
@@ -127,68 +127,73 @@ public class TestPullReplica extends SolrCloudTestCase {
 
   // commented out on: 17-Feb-2019   @BadApple(bugUrl="https://issues.apache.org/jira/browse/SOLR-12028") // 21-May-2018
   public void testCreateDelete() throws Exception {
-    try {
-      switch (random().nextInt(3)) {
-        case 0:
-          // Sometimes use SolrJ
-          CollectionAdminRequest.createCollection(collectionName, "conf", 2, 1, 0, 3)
-          .setMaxShardsPerNode(100)
-          .process(cluster.getSolrClient());
-          break;
-        case 1:
-          // Sometimes use v1 API
-          String url = String.format(Locale.ROOT, "%s/admin/collections?action=CREATE&name=%s&collection.configName=%s&numShards=%s&pullReplicas=%s&maxShardsPerNode=%s",
-              cluster.getRandomJetty(random()).getBaseUrl(),
-              collectionName, "conf",
-              2,    // numShards
-              3,    // pullReplicas
-              100); // maxShardsPerNode
-          url = url + pickRandom("", "&nrtReplicas=1", "&replicationFactor=1"); // These options should all mean the same
-          Http2SolrClient.GET(url, cluster.getSolrClient().getHttpClient());
-          break;
-        case 2:
-          // Sometimes use V2 API
-          url = cluster.getRandomJetty(random()).getBaseUrl().toString() + "/____v2/c";
-          String requestBody = String.format(Locale.ROOT, "{create:{name:%s, config:%s, numShards:%s, pullReplicas:%s, maxShardsPerNode:%s %s}}",
-              collectionName, "conf",
-              2,    // numShards
-              3,    // pullReplicas
-              100, // maxShardsPerNode
-              pickRandom("", ", nrtReplicas:1", ", replicationFactor:1")); // These options should all mean the same
-          Http2SolrClient.SimpleResponse response = Http2SolrClient.POST(url, cluster.getSolrClient().getHttpClient(), requestBody.getBytes("UTF-8"), "application/json");
-          assertEquals(200, response.status);
-          break;
+    switch (random().nextInt(3)) {
+      case 0:
+        // Sometimes use SolrJ
+        CollectionAdminRequest
+            .createCollection(collectionName, "conf", 2, 1, 0, 3)
+            .setMaxShardsPerNode(100).process(cluster.getSolrClient());
+        break;
+      case 1:
+        // Sometimes use v1 API
+        String url = String.format(Locale.ROOT,
+            "%s/admin/collections?action=CREATE&name=%s&collection.configName=%s&numShards=%s&pullReplicas=%s&maxShardsPerNode=%s",
+            cluster.getRandomJetty(random()).getBaseUrl(), collectionName,
+            "conf", 2,    // numShards
+            3,    // pullReplicas
+            100); // maxShardsPerNode
+        url = url + pickRandom("", "&nrtReplicas=1",
+            "&replicationFactor=1"); // These options should all mean the same
+        Http2SolrClient.GET(url, cluster.getSolrClient().getHttpClient());
+        break;
+      case 2:
+        // Sometimes use V2 API
+        url = cluster.getRandomJetty(random()).getBaseUrl().toString()
+            + "/____v2/c";
+        String requestBody = String.format(Locale.ROOT,
+            "{create:{name:%s, config:%s, numShards:%s, pullReplicas:%s, maxShardsPerNode:%s %s}}",
+            collectionName, "conf", 2,    // numShards
+            3,    // pullReplicas
+            100, // maxShardsPerNode
+            pickRandom("", ", nrtReplicas:1",
+                ", replicationFactor:1")); // These options should all mean the same
+        Http2SolrClient.SimpleResponse response = Http2SolrClient
+            .POST(url, cluster.getSolrClient().getHttpClient(),
+                requestBody.getBytes("UTF-8"), "application/json");
+        assertEquals(200, response.status);
+        break;
+    }
+    boolean reloaded = false;
+    while (true) {
+      DocCollection docCollection = getCollectionState(collectionName);
+      assertNotNull(docCollection);
+      assertEquals("Expecting 4 relpicas per shard", 8,
+          docCollection.getReplicas().size());
+      assertEquals("Expecting 6 pull replicas, 3 per shard", 6,
+          docCollection.getReplicas(EnumSet.of(Replica.Type.PULL)).size());
+      assertEquals("Expecting 2 writer replicas, one per shard", 2,
+          docCollection.getReplicas(EnumSet.of(Replica.Type.NRT)).size());
+      for (Slice s : docCollection.getSlices()) {
+        // read-only replicas can never become leaders
+        assertFalse(s.getLeader().getType() == Replica.Type.PULL);
+        List<String> shardElectionNodes = cluster.getZkClient().getChildren(
+            ZkStateReader.getShardLeadersElectPath(collectionName, s.getName()),
+            null, true);
+        assertEquals(
+            "Unexpected election nodes for Shard: " + s.getName() + ": "
+                + Arrays.toString(shardElectionNodes.toArray()), 1,
+            shardElectionNodes.size());
       }
-      boolean reloaded = false;
-      while (true) {
-        DocCollection docCollection = getCollectionState(collectionName);
-        assertNotNull(docCollection);
-        assertEquals("Expecting 4 relpicas per shard",
-            8, docCollection.getReplicas().size());
-        assertEquals("Expecting 6 pull replicas, 3 per shard",
-            6, docCollection.getReplicas(EnumSet.of(Replica.Type.PULL)).size());
-        assertEquals("Expecting 2 writer replicas, one per shard",
-            2, docCollection.getReplicas(EnumSet.of(Replica.Type.NRT)).size());
-        for (Slice s:docCollection.getSlices()) {
-          // read-only replicas can never become leaders
-          assertFalse(s.getLeader().getType() == Replica.Type.PULL);
-          List<String> shardElectionNodes = cluster.getZkClient().getChildren(ZkStateReader.getShardLeadersElectPath(collectionName, s.getName()), null, true);
-          assertEquals("Unexpected election nodes for Shard: " + s.getName() + ": " + Arrays.toString(shardElectionNodes.toArray()),
-              1, shardElectionNodes.size());
-        }
-        assertUlogPresence(docCollection);
-        if (reloaded) {
-          break;
-        } else {
-          // reload
-          CollectionAdminResponse response = CollectionAdminRequest.reloadCollection(collectionName)
-          .process(cluster.getSolrClient());
-          assertEquals(0, response.getStatus());
-          reloaded = true;
-        }
+      assertUlogPresence(docCollection);
+      if (reloaded) {
+        break;
+      } else {
+        // reload
+        CollectionAdminResponse response = CollectionAdminRequest
+            .reloadCollection(collectionName).process(cluster.getSolrClient());
+        assertEquals(0, response.getStatus());
+        reloaded = true;
       }
-    } finally {
-      zkClient().printLayoutToStream(System.out);
     }
   }
 
@@ -334,7 +339,6 @@ public class TestPullReplica extends SolrCloudTestCase {
     });
     CollectionAdminRequest.addReplicaToShard(collectionName, "shard1", Replica.Type.PULL).process(cluster.getSolrClient());
     waitForState("Replica not added", collectionName, activeReplicaCount(1, 0, 1));
-    zkClient().printLayoutToStream(System.out);
     if (log.isInfoEnabled()) {
       log.info("Saw states: {}", Arrays.toString(statesSeen.toArray()));
     }
diff --git a/solr/core/src/test/org/apache/solr/cloud/TrollingIndexReaderFactory.java b/solr/core/src/test/org/apache/solr/cloud/TrollingIndexReaderFactory.java
index fd78976..aea5ca7 100644
--- a/solr/core/src/test/org/apache/solr/cloud/TrollingIndexReaderFactory.java
+++ b/solr/core/src/test/org/apache/solr/cloud/TrollingIndexReaderFactory.java
@@ -106,7 +106,6 @@ public class TrollingIndexReaderFactory extends StandardIndexReaderFactory {
     Predicate<StackTraceElement> judge = new Predicate<StackTraceElement>() {
       @Override
       public boolean test(StackTraceElement trace) {
-        System.out.println("trace:" + trace);
         return trace.getClassName().indexOf(className)>=0;
       }
       @Override
diff --git a/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java b/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java
index f23e915..78bda01 100644
--- a/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/ZkCLITest.java
@@ -394,11 +394,4 @@ public class ZkCLITest extends SolrTestCaseJ4 {
     zkServer.shutdown();
     super.tearDown();
   }
-
-  private void printLayout(String zkHost) throws Exception {
-    SolrZkClient zkClient = new SolrZkClient(zkHost, AbstractZkTestCase.TIMEOUT);
-    zkClient.start();
-    zkClient.printLayoutToStream(System.out);
-    zkClient.close();
-  }
 }
diff --git a/solr/core/src/test/org/apache/solr/cloud/ZkNodePropsTest.java b/solr/core/src/test/org/apache/solr/cloud/ZkNodePropsTest.java
index 604c56b..f06b27c 100644
--- a/solr/core/src/test/org/apache/solr/cloud/ZkNodePropsTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/ZkNodePropsTest.java
@@ -49,7 +49,6 @@ public class ZkNodePropsTest extends SolrTestCaseJ4 {
       jbc.marshal(zkProps.getProperties(), baos);
     }
     bytes = baos.toByteArray();
-    System.out.println("BIN size : " + bytes.length);
     ZkNodeProps props3 = ZkNodeProps.load(bytes);
     props.forEach((s, o) -> assertEquals(o, props3.get(s)));
   }
diff --git a/solr/core/src/test/org/apache/solr/cloud/api/collections/CollectionReloadTest.java b/solr/core/src/test/org/apache/solr/cloud/api/collections/CollectionReloadTest.java
index b46c681..2f7f374 100644
--- a/solr/core/src/test/org/apache/solr/cloud/api/collections/CollectionReloadTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/api/collections/CollectionReloadTest.java
@@ -70,7 +70,6 @@ public class CollectionReloadTest extends SolrCloudTestCase {
 //    });
 
     final int initialStateVersion = getCollectionState(testCollectionName).getZNodeVersion();
-    System.out.println("init:" + initialStateVersion);
 
      Replica leader
             = cluster.getSolrClient().getZkStateReader().getLeaderRetry(testCollectionName, "shard1", DEFAULT_TIMEOUT);
@@ -79,7 +78,6 @@ public class CollectionReloadTest extends SolrCloudTestCase {
     waitForState("Timed out waiting for core to re-register as ACTIVE after session expiry", testCollectionName, (n, c) -> {
       log.info("Collection state: {}", c);
       Replica expiredReplica = c.getReplica(leader.getName());
-      System.out.println("cversion:" + c.getZNodeVersion());
       return expiredReplica.getState() == Replica.State.ACTIVE && c.getZNodeVersion() > initialStateVersion;
     });
 
diff --git a/solr/core/src/test/org/apache/solr/cloud/api/collections/ShardSplitTest.java b/solr/core/src/test/org/apache/solr/cloud/api/collections/ShardSplitTest.java
index b53c2eb..7870d38 100644
--- a/solr/core/src/test/org/apache/solr/cloud/api/collections/ShardSplitTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/api/collections/ShardSplitTest.java
@@ -97,9 +97,7 @@ public class ShardSplitTest extends SolrCloudBridgeTestCase {
   @BeforeClass
   public static void beforeShardSplitTest() throws Exception {
     System.setProperty("managed.schema.mutable", "true");
-    System.out.println("Before Split");
     useFactory(null);
-
   }
 
   @Test
diff --git a/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java b/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
index 74f444a..3aecb92 100644
--- a/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
+++ b/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
@@ -171,7 +171,7 @@ public class TestCollectionAPI extends ReplicaPropertiesBase {
 
       rsp = CollectionAdminRequest.getClusterStatus().setCollectionName(COLLECTION_NAME)
           .process(client).getResponse();
-      System.out.println(rsp);
+
       cluster = (NamedList<Object>) rsp.get("cluster");
       assertNotNull("Cluster state should not be null", cluster);
       collections = (NamedList<Object>) cluster.get("collections");
diff --git a/solr/core/src/test/org/apache/solr/cloud/cdcr/CdcrBootstrapTest.java b/solr/core/src/test/org/apache/solr/cloud/cdcr/CdcrBootstrapTest.java
index 5d3f613..156200d 100644
--- a/solr/core/src/test/org/apache/solr/cloud/cdcr/CdcrBootstrapTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/cdcr/CdcrBootstrapTest.java
@@ -172,7 +172,6 @@ public class CdcrBootstrapTest extends SolrTestCaseJ4 {
     // start the target first so that we know its zkhost
     MiniSolrCloudCluster target = new MiniSolrCloudCluster(1, createTempDir("cdcr-target"), buildJettyConfig("/solr"));
     try {
-      System.out.println("Target zkHost = " + target.getZkServer().getZkAddress());
       System.setProperty("cdcr.target.zkHost", target.getZkServer().getZkAddress());
 
       MiniSolrCloudCluster source = new MiniSolrCloudCluster(1, createTempDir("cdcr-source"), buildJettyConfig("/solr"));
@@ -257,7 +256,6 @@ public class CdcrBootstrapTest extends SolrTestCaseJ4 {
     // start the target first so that we know its zkhost
     MiniSolrCloudCluster target = new MiniSolrCloudCluster(3, createTempDir("cdcr-target"), buildJettyConfig("/solr"));
     try {
-      System.out.println("Target zkHost = " + target.getZkServer().getZkAddress());
       System.setProperty("cdcr.target.zkHost", target.getZkServer().getZkAddress());
 
       MiniSolrCloudCluster source = new MiniSolrCloudCluster(3, createTempDir("cdcr-source"), buildJettyConfig("/solr"));
diff --git a/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java b/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
index e738ac8..1702624 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestSolrConfigHandlerCloud.java
@@ -74,7 +74,6 @@ public class TestSolrConfigHandlerCloud extends AbstractFullDistribZkTestBase {
         TIMEOUT_S);
 
    NamedList<Object> rsp = cloudClient.request(new LukeRequest());
-   System.out.println(rsp);
   }
 
   private void testReqHandlerAPIs() throws Exception {
diff --git a/solr/core/src/test/org/apache/solr/handler/tagger/RandomizedTaggerTest.java b/solr/core/src/test/org/apache/solr/handler/tagger/RandomizedTaggerTest.java
index ec73f81..a510d91 100644
--- a/solr/core/src/test/org/apache/solr/handler/tagger/RandomizedTaggerTest.java
+++ b/solr/core/src/test/org/apache/solr/handler/tagger/RandomizedTaggerTest.java
@@ -110,17 +110,15 @@ public class RandomizedTaggerTest extends TaggerTestCase {
         madeIt = true;
       } finally {
         if (!madeIt) {
-          System.out.println("Reproduce with:");
-          System.out.print(" buildNames(");
           for (int i = 0; i < NAMES.size(); i++) {
             if (i != 0)
               System.out.print(',');
-            System.out.print('"');
-            System.out.print(NAMES.get(i));
-            System.out.print('"');
+            //System.out.print('"');
+            //System.out.print(NAMES.get(i));
+           // System.out.print('"');
           }
-          System.out.println(");");
-          System.out.println(" assertBruteForce(\"" + input+"\");");
+          //System.out.println(");");
+          //System.out.println(" assertBruteForce(\"" + input+"\");");
         }
       }
     }
diff --git a/solr/core/src/test/org/apache/solr/internal/csv/CSVPrinterTest.java b/solr/core/src/test/org/apache/solr/internal/csv/CSVPrinterTest.java
index 4de8e5d..cb2fc58 100644
--- a/solr/core/src/test/org/apache/solr/internal/csv/CSVPrinterTest.java
+++ b/solr/core/src/test/org/apache/solr/internal/csv/CSVPrinterTest.java
@@ -127,7 +127,7 @@ public class CSVPrinterTest extends SolrTestCase {
     String[][] parseResult = parser.getAllValues();
 
     if (!equals(lines, parseResult)) {
-      System.out.println("Printer output :" + printable(result));
+      //System.out.println("Printer output :" + printable(result));
       assertTrue(false);
     }
   }
@@ -146,8 +146,8 @@ public class CSVPrinterTest extends SolrTestCase {
         String aval = linea[j];
         String bval = lineb[j];
         if (!aval.equals(bval)) {
-          System.out.println("expected  :" + printable(aval));
-          System.out.println("got       :" + printable(bval));
+          //System.out.println("expected  :" + printable(aval));
+          //System.out.println("got       :" + printable(bval));
           return false;
         }
       }
diff --git a/solr/core/src/test/org/apache/solr/logging/TestLogWatcher.java b/solr/core/src/test/org/apache/solr/logging/TestLogWatcher.java
index 2caf3e0..d5e3b20 100644
--- a/solr/core/src/test/org/apache/solr/logging/TestLogWatcher.java
+++ b/solr/core/src/test/org/apache/solr/logging/TestLogWatcher.java
@@ -86,14 +86,14 @@ public class TestLogWatcher extends SolrTestCaseJ4 {
       } while (foundNewMsg == false && timeOut.hasTimedOut() == false);
 
       if (foundNewMsg == false || foundOldMessage) {
-        System.out.println("Dumping all events in failed watcher:");
+        //System.out.println("Dumping all events in failed watcher:");
         SolrDocumentList events = watcher.getHistory(-1, null);
         for (SolrDocument doc : events) {
-          System.out.println("   Event:'" + doc.toString() + "'");
+          //System.out.println("   Event:'" + doc.toString() + "'");
         }
-        System.out.println("Recorded old messages");
+        //System.out.println("Recorded old messages");
         for (String oldMsg : oldMessages) {
-          System.out.println("    " + oldMsg);
+          //System.out.println("    " + oldMsg);
         }
 
         fail("Did not find expected message state, dumped current watcher's messages above, last message added: '" + msg + "'");
diff --git a/solr/core/src/test/org/apache/solr/response/TestBinaryResponseWriter.java b/solr/core/src/test/org/apache/solr/response/TestBinaryResponseWriter.java
index bbc4985..17d47fc 100644
--- a/solr/core/src/test/org/apache/solr/response/TestBinaryResponseWriter.java
+++ b/solr/core/src/test/org/apache/solr/response/TestBinaryResponseWriter.java
@@ -84,7 +84,7 @@ public class TestBinaryResponseWriter extends SolrTestCaseJ4 {
     byte[] bytes1 = new byte[1024];
     int len1 = ByteUtils.UTF16toUTF8(input, 0, input.length(), bytes1, 0);
     BytesRef bytesref = new BytesRef(input);
-    System.out.println();
+    //System.out.println();
     assertEquals(len1, bytesref.length);
     for (int i = 0; i < len1; i++) {
       assertEquals(input + " not matching char at :" + i, bytesref.bytes[i], bytes1[i]);
diff --git a/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java b/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java
index 972bcb8..871dfcd 100644
--- a/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java
+++ b/solr/core/src/test/org/apache/solr/response/TestCustomDocTransformer.java
@@ -110,7 +110,7 @@ public class TestCustomDocTransformer extends SolrTestCaseJ4 {
         String v = getAsString(s, doc);
         str.append(v).append('#');
       }
-      System.out.println( "HELLO: "+str );
+      //System.out.println( "HELLO: "+str );
       doc.setField(name, str.toString());
     }
   }
diff --git a/solr/core/src/test/org/apache/solr/response/TestJavabinTupleStreamParser.java b/solr/core/src/test/org/apache/solr/response/TestJavabinTupleStreamParser.java
index 81d0e26..8ae395d 100644
--- a/solr/core/src/test/org/apache/solr/response/TestJavabinTupleStreamParser.java
+++ b/solr/core/src/test/org/apache/solr/response/TestJavabinTupleStreamParser.java
@@ -74,7 +74,7 @@ public class TestJavabinTupleStreamParser extends SolrTestCaseJ4 {
       assertEquals("2", map.get("id"));
       map = parser.next();
       assertEquals("3", map.get("id"));
-      System.out.println();
+      //System.out.println();
       map = parser.next();
       assertNull(map);
     }
diff --git a/solr/core/src/test/org/apache/solr/schema/CurrencyFieldTypeTest.java b/solr/core/src/test/org/apache/solr/schema/CurrencyFieldTypeTest.java
index c63a860..8da34d5 100644
--- a/solr/core/src/test/org/apache/solr/schema/CurrencyFieldTypeTest.java
+++ b/solr/core/src/test/org/apache/solr/schema/CurrencyFieldTypeTest.java
@@ -290,8 +290,9 @@ public class CurrencyFieldTypeTest extends SolrTestCaseJ4 {
 
     for (int i = 1; i <= initDocs; i++) {
       assertU(adoc("id", "" + i, fieldName, (r.nextInt(10) + 1.00) + ",USD"));
-      if (i % 1000 == 0)
-        System.out.println(i);
+      if (i % 1000 == 0) {
+        //System.out.println(i);
+      }
     }
 
     assertU(commit());
@@ -308,10 +309,10 @@ public class CurrencyFieldTypeTest extends SolrTestCaseJ4 {
         assertQ(req("fl", "*,score", "q", fieldName+":[" +  lower + ",USD TO " + (lower + (9.99 - (j * 0.01))) + ",USD]"), "//*");
       }
 
-      System.out.println(timer.getTime());
+      //System.out.println(timer.getTime());
     }
 
-    System.out.println("---");
+    //System.out.println("---");
 
     for (int j = 0; j < 3; j++) {
       final RTimer timer = new RTimer();
@@ -320,7 +321,7 @@ public class CurrencyFieldTypeTest extends SolrTestCaseJ4 {
         assertQ(req("fl", "*,score", "q", fieldName+":[" +  lower + ",EUR TO " + (lower + (9.99 - (j * 0.01))) + ",EUR]"), "//*");
       }
 
-      System.out.println(timer.getTime());
+      //System.out.println(timer.getTime());
     }
   }
 
diff --git a/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java b/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
index 51ed4f3..38e8456 100644
--- a/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
+++ b/solr/core/src/test/org/apache/solr/schema/TestBulkSchemaConcurrent.java
@@ -140,7 +140,7 @@ public class TestBulkSchemaConcurrent extends SolrCloudBridgeTestCase {
       errs.add(new String(Utils.toJSON(errors), StandardCharsets.UTF_8));
       return;
     }
-    System.out.println("Got map:" + map);
+    //System.out.println("Got map:" + map);
     //get another node
     Set<String> errmessages = new HashSet<>();
     RestTestHarness harness = randomRestTestHarness(LuceneTestCase.random());
diff --git a/solr/core/src/test/org/apache/solr/search/DocSetPerf.java b/solr/core/src/test/org/apache/solr/search/DocSetPerf.java
index 28e3e0c..f12f018 100644
--- a/solr/core/src/test/org/apache/solr/search/DocSetPerf.java
+++ b/solr/core/src/test/org/apache/solr/search/DocSetPerf.java
@@ -144,9 +144,9 @@ public class DocSetPerf {
       }
     }
 
-    System.out.println("TIME="+timer.getTime());
+    //System.out.println("TIME="+timer.getTime());
 
-    System.out.println("ret="+ret);
+    //System.out.println("ret="+ret);
   }
 
 }
diff --git a/solr/core/src/test/org/apache/solr/search/TestFilteredDocIdSet.java b/solr/core/src/test/org/apache/solr/search/TestFilteredDocIdSet.java
index cc9ec0a..31894d8 100644
--- a/solr/core/src/test/org/apache/solr/search/TestFilteredDocIdSet.java
+++ b/solr/core/src/test/org/apache/solr/search/TestFilteredDocIdSet.java
@@ -106,8 +106,8 @@ public class TestFilteredDocIdSet extends SolrTestCase {
     int[] answer = new int[]{4,6,8};
     boolean same = Arrays.equals(answer, docs);
     if (!same) {
-      System.out.println("answer: " + Arrays.toString(answer));
-      System.out.println("gotten: " + Arrays.toString(docs));
+      //System.out.println("answer: " + Arrays.toString(answer));
+      //System.out.println("gotten: " + Arrays.toString(docs));
       fail();
     }
   }
diff --git a/solr/core/src/test/org/apache/solr/search/TestFiltering.java b/solr/core/src/test/org/apache/solr/search/TestFiltering.java
index da0307d..d8124cb 100644
--- a/solr/core/src/test/org/apache/solr/search/TestFiltering.java
+++ b/solr/core/src/test/org/apache/solr/search/TestFiltering.java
@@ -481,7 +481,7 @@ public class TestFiltering extends SolrTestCaseJ4 {
 
         if (iiter==-1 && qiter==-1) {
           // set breakpoint here to debug a specific issue
-          System.out.println("request="+params);
+          //System.out.println("request="+params);
         }
 
         try {
diff --git a/solr/core/src/test/org/apache/solr/search/TestReload.java b/solr/core/src/test/org/apache/solr/search/TestReload.java
index 13d78fc..68e33d3 100644
--- a/solr/core/src/test/org/apache/solr/search/TestReload.java
+++ b/solr/core/src/test/org/apache/solr/search/TestReload.java
@@ -68,7 +68,7 @@ public class TestReload extends TestRTGBase {
           assertU(commit("openSearcher","false"));   // should cause a RTG searcher to be opened as well
         } else {
           boolean softCommit = rand.nextBoolean();
-          System.out.println("!!! softCommit" + softCommit);
+          //System.out.println("!!! softCommit" + softCommit);
           // assertU(commit("softCommit", ""+softCommit));
         }
       }
diff --git a/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java b/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
index 08167b6..4dae507 100644
--- a/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
+++ b/solr/core/src/test/org/apache/solr/search/TestSearchPerf.java
@@ -148,7 +148,7 @@ public class TestSearchPerf extends SolrTestCaseJ4 {
     }
 
     double elapsed = timer.getTime();
-    System.out.println("ret="+ret+ " time="+elapsed+" throughput="+iter*1000/(elapsed+1));
+    //System.out.println("ret="+ret+ " time="+elapsed+" throughput="+iter*1000/(elapsed+1));
 
     req.close();
     assertTrue(ret>0);  // make sure we did some work
@@ -169,7 +169,7 @@ public class TestSearchPerf extends SolrTestCaseJ4 {
     }
 
     double elapsed = timer.getTime();
-    System.out.println("ret="+ret+ " time="+elapsed+" throughput="+iter*1000/(elapsed+1));
+    //System.out.println("ret="+ret+ " time="+elapsed+" throughput="+iter*1000/(elapsed+1));
 
     req.close();
     assertTrue(ret>0);  // make sure we did some work
diff --git a/solr/core/src/test/org/apache/solr/search/TestSolrJ.java b/solr/core/src/test/org/apache/solr/search/TestSolrJ.java
index e1bb8f3..041637b 100644
--- a/solr/core/src/test/org/apache/solr/search/TestSolrJ.java
+++ b/solr/core/src/test/org/apache/solr/search/TestSolrJ.java
@@ -80,7 +80,7 @@ public class TestSolrJ extends SolrTestCaseJ4 {
           try {
             indexDocs(base, docsPerThread, maxSleep);
           } catch (Exception e) {
-            System.out.println("###############################CAUGHT EXCEPTION");
+            //System.out.println("###############################CAUGHT EXCEPTION");
             e.printStackTrace();
             ex = e;
           }
@@ -100,7 +100,7 @@ public class TestSolrJ extends SolrTestCaseJ4 {
     }
 
     double elapsed = timer.getTime();
-    System.out.println("time="+elapsed + " throughput="+(nDocs*1000/elapsed) + " Exception="+ex);
+    //System.out.println("time="+elapsed + " throughput="+(nDocs*1000/elapsed) + " Exception="+ex);
 
     // should server threads be marked as daemon?
     // need a server.close()!!!
@@ -136,13 +136,13 @@ public class TestSolrJ extends SolrTestCaseJ4 {
 
     for (int i=base; i<count+base; i++) {
       if ((i & 0xfffff) == 0) {
-        System.out.print("\n% " + new Date()+ "\t" + i + "\t");
-        System.out.flush();
+        //System.out.print("\n% " + new Date()+ "\t" + i + "\t");
+        //System.out.flush();
       }
 
       if ((i & 0xffff) == 0) {
-        System.out.print(".");
-        System.out.flush();
+        //System.out.print(".");
+        //System.out.flush();
       }
 
       SolrInputDocument doc = getDocument(i);
@@ -176,7 +176,7 @@ public class TestSolrJ extends SolrTestCaseJ4 {
         client.commit(true, true, true);
       }
 
-      System.out.println("TIME: " + timer.getTime());
+      //System.out.println("TIME: " + timer.getTime());
     }
 
   }
diff --git a/solr/core/src/test/org/apache/solr/search/TestSolrQueryParser.java b/solr/core/src/test/org/apache/solr/search/TestSolrQueryParser.java
index e9d4053..6ef4d27 100644
--- a/solr/core/src/test/org/apache/solr/search/TestSolrQueryParser.java
+++ b/solr/core/src/test/org/apache/solr/search/TestSolrQueryParser.java
@@ -752,7 +752,7 @@ public class TestSolrQueryParser extends SolrTestCaseJ4 {
 
     long end = System.nanoTime();
 
-    System.out.println((assertOn ? "WARNING, assertions enabled. " : "") + "ret=" + ret + " Parser QPS:" + ((long)numQueries * iter)*1000000000/(end-start));
+    //System.out.println((assertOn ? "WARNING, assertions enabled. " : "") + "ret=" + ret + " Parser QPS:" + ((long)numQueries * iter)*1000000000/(end-start));
 
     req.close();
   }
diff --git a/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java b/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
index 004f262..86c6485 100644
--- a/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
+++ b/solr/core/src/test/org/apache/solr/search/facet/TestJsonFacets.java
@@ -3502,9 +3502,9 @@ public class TestJsonFacets extends SolrTestCaseHS {
     all.add(catA);
     all.add(catB);
 
-    System.out.println(str(catA));
-    System.out.println(str(catB));
-    System.out.println(str(all));
+    //System.out.println(str(catA));
+    //System.out.println(str(catB));
+    //System.out.println(str(all));
 
     // 2.0 2.2 3.0 3.8 4.0
     // -9.0 -8.2 -5.0 7.800000000000001 11.0
@@ -3527,9 +3527,9 @@ public class TestJsonFacets extends SolrTestCaseHS {
     t1.add(90, 1);
     t1.add(50, 1);
 
-    System.out.println(t1.quantile(0.1));
-    System.out.println(t1.quantile(0.5));
-    System.out.println(t1.quantile(0.9));
+    //System.out.println(t1.quantile(0.1));
+    //System.out.println(t1.quantile(0.5));
+    //System.out.println(t1.quantile(0.9));
 
     assertEquals(t1.quantile(0.5), 50.0, 0.01);
 
@@ -3538,9 +3538,9 @@ public class TestJsonFacets extends SolrTestCaseHS {
     t2.add(170, 1);
     t2.add(90, 1);
 
-    System.out.println(t2.quantile(0.1));
-    System.out.println(t2.quantile(0.5));
-    System.out.println(t2.quantile(0.9));
+    //System.out.println(t2.quantile(0.1));
+    //System.out.println(t2.quantile(0.5));
+    //System.out.println(t2.quantile(0.9));
 
     AVLTreeDigest top = new AVLTreeDigest(100);
 
@@ -3552,9 +3552,9 @@ public class TestJsonFacets extends SolrTestCaseHS {
     ByteBuffer rbuf = ByteBuffer.wrap(arr1);
     top.add(AVLTreeDigest.fromBytes(rbuf));
 
-    System.out.println(top.quantile(0.1));
-    System.out.println(top.quantile(0.5));
-    System.out.println(top.quantile(0.9));
+    //System.out.println(top.quantile(0.1));
+    //System.out.println(top.quantile(0.5));
+    //System.out.println(top.quantile(0.9));
 
     t2.compress();
     ByteBuffer buf2 = ByteBuffer.allocate(t2.byteSize()); // upper bound
@@ -3564,9 +3564,9 @@ public class TestJsonFacets extends SolrTestCaseHS {
     ByteBuffer rbuf2 = ByteBuffer.wrap(arr2);
     top.add(AVLTreeDigest.fromBytes(rbuf2));
 
-    System.out.println(top.quantile(0.1));
-    System.out.println(top.quantile(0.5));
-    System.out.println(top.quantile(0.9));
+    //System.out.println(top.quantile(0.1));
+    //System.out.println(top.quantile(0.5));
+    //System.out.println(top.quantile(0.9));
   }
 
   public void XtestHLL() {
diff --git a/solr/core/src/test/org/apache/solr/search/join/TestCloudNestedDocsSort.java b/solr/core/src/test/org/apache/solr/search/join/TestCloudNestedDocsSort.java
index e1e4218..bbb0256 100644
--- a/solr/core/src/test/org/apache/solr/search/join/TestCloudNestedDocsSort.java
+++ b/solr/core/src/test/org/apache/solr/search/join/TestCloudNestedDocsSort.java
@@ -172,9 +172,9 @@ public class TestCloudNestedDocsSort extends SolrCloudTestCase {
           final String actParentId = ""+ parent.get("id");
           if (!actParentId.equals(parentId)) {
             final String chDump = children.toString().replace("SolrDocument","\nSolrDocument");
-            System.out.println("\n\n"+chDump+"\n\n");
-            System.out.println("\n\n"+parents.toString().replace("SolrDocument","\nSolrDocument")
-                +"\n\n");
+            //System.out.println("\n\n"+chDump+"\n\n");
+            //System.out.println("\n\n"+parents.toString().replace("SolrDocument","\nSolrDocument")
+             //   +"\n\n");
           }
           assertEquals(""+child+"\n"+parent,actParentId, parentId);
         }
diff --git a/solr/core/src/test/org/apache/solr/search/mlt/CloudMLTQParserTest.java b/solr/core/src/test/org/apache/solr/search/mlt/CloudMLTQParserTest.java
index 8a61b21..af71607 100644
--- a/solr/core/src/test/org/apache/solr/search/mlt/CloudMLTQParserTest.java
+++ b/solr/core/src/test/org/apache/solr/search/mlt/CloudMLTQParserTest.java
@@ -147,7 +147,7 @@ public class CloudMLTQParserTest extends SolrCloudTestCase {
     
     Arrays.sort(actualIds);
     Arrays.sort(expectedIds);
-    System.out.println("DEBUG ACTUAL IDS 1: " + Arrays.toString(actualIds));
+    //System.out.println("DEBUG ACTUAL IDS 1: " + Arrays.toString(actualIds));
     assertArrayEquals(expectedIds, actualIds);
 
     queryResponse = cluster.getSolrClient().query(COLLECTION, new SolrQuery("{!mlt qf=lowerfilt_u^10,lowerfilt1_u^1000 boost=true mintf=0 mindf=0}30"));
@@ -161,7 +161,7 @@ public class CloudMLTQParserTest extends SolrCloudTestCase {
     
     Arrays.sort(actualIds);
     Arrays.sort(expectedIds);
-    System.out.println("DEBUG ACTUAL IDS 2: " + Arrays.toString(actualIds));
+    //System.out.println("DEBUG ACTUAL IDS 2: " + Arrays.toString(actualIds));
     assertArrayEquals(Arrays.toString(expectedIds) + " " + Arrays.toString(actualIds), expectedIds, actualIds);
   }
 
diff --git a/solr/core/src/test/org/apache/solr/search/stats/TestBaseStatsCache.java b/solr/core/src/test/org/apache/solr/search/stats/TestBaseStatsCache.java
index 33ceb5b..9796cde 100644
--- a/solr/core/src/test/org/apache/solr/search/stats/TestBaseStatsCache.java
+++ b/solr/core/src/test/org/apache/solr/search/stats/TestBaseStatsCache.java
@@ -43,13 +43,13 @@ public abstract class TestBaseStatsCache extends TestDefaultStatsCache {
   // remain identical
   @Override
   protected void checkResponse(QueryResponse controlRsp, QueryResponse shardRsp) {
-    System.out.println("======================= Control Response =======================");
-    System.out.println(controlRsp);
-    System.out.println("");
-    System.out.println("");
-    System.out.println("======================= Shard Response =======================");
-    System.out.println("");
-    System.out.println(shardRsp);
+    //System.out.println("======================= Control Response =======================");
+    //System.out.println(controlRsp);
+    //System.out.println("");
+    //System.out.println("");
+    //System.out.println("======================= Shard Response =======================");
+    //System.out.println("");
+    //System.out.println(shardRsp);
     SolrDocumentList shardList = shardRsp.getResults();
     SolrDocumentList controlList = controlRsp.getResults();
     
diff --git a/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java b/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
index a9fa697..06e2812 100644
--- a/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
+++ b/solr/core/src/test/org/apache/solr/security/BasicAuthIntegrationTest.java
@@ -120,7 +120,7 @@ public class BasicAuthIntegrationTest extends SolrCloudAuthTestCase {
 
       JettySolrRunner randomJetty = cluster.getRandomJetty(random());
       String baseUrl = randomJetty.getBaseUrl().toString();
-      System.out.println("BaseUrl:" + baseUrl);
+      //System.out.println("BaseUrl:" + baseUrl);
       // to start there is no handler
       zkClient().setData("/security.json", STD_CONF.replaceAll("'", "\"").getBytes(UTF_8), true);
       //verifySecurityStatus(cl, baseUrl + authcPrefix, "authentication/class", "solr.BasicAuthPlugin", 20);
diff --git a/solr/core/src/test/org/apache/solr/security/JWTVerificationkeyResolverTest.java b/solr/core/src/test/org/apache/solr/security/JWTVerificationkeyResolverTest.java
index d6c2fd7..c00beba 100644
--- a/solr/core/src/test/org/apache/solr/security/JWTVerificationkeyResolverTest.java
+++ b/solr/core/src/test/org/apache/solr/security/JWTVerificationkeyResolverTest.java
@@ -81,7 +81,7 @@ public class JWTVerificationkeyResolverTest extends SolrTestCaseJ4 {
     when(firstJwkList.getJsonWebKeys()).thenReturn(asList(k1.getJwk(), k2.getJwk()));
     doAnswer(invocation -> {
       keysToReturnFromSecondJwk = (List<JsonWebKey>) refreshSequenceForSecondJwk.next();
-      System.out.println("Refresh called, next to return is " + keysToReturnFromSecondJwk);
+      //System.out.println("Refresh called, next to return is " + keysToReturnFromSecondJwk);
       return null;
     }).when(secondJwkList).refresh();
     when(secondJwkList.getJsonWebKeys()).then(inv -> {
diff --git a/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java b/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
index f1968d6..73f02f9 100644
--- a/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
+++ b/solr/core/src/test/org/apache/solr/spelling/SpellCheckCollatorTest.java
@@ -127,7 +127,7 @@ public class SpellCheckCollatorTest extends SolrTestCaseJ4 {
       List<String> collations = collationHolder.getAll("collation");
       assertTrue(collations.size()==1); 
       String collation = collations.iterator().next();    
-      System.out.println(collation);
+      //System.out.println(collation);
       assertTrue("Incorrect collation: " + collation,"id:[1 TO 10] AND lowerfilt:love".equals(collation));
     }
   }
diff --git a/solr/core/src/test/org/apache/solr/store/blockcache/BlockCacheTest.java b/solr/core/src/test/org/apache/solr/store/blockcache/BlockCacheTest.java
index 2a6fb17..035dbe0 100644
--- a/solr/core/src/test/org/apache/solr/store/blockcache/BlockCacheTest.java
+++ b/solr/core/src/test/org/apache/solr/store/blockcache/BlockCacheTest.java
@@ -80,11 +80,11 @@ public class BlockCacheTest extends SolrTestCase {
         assertTrue("buffer content differs", Arrays.equals(testData, buffer));
       }
     }
-    System.out.println("Cache Hits    = " + hitsInCache.get());
-    System.out.println("Cache Misses  = " + missesInCache.get());
-    System.out.println("Store         = " + (storeTime / (double) passes) / 1000000.0);
-    System.out.println("Fetch         = " + (fetchTime / (double) passes) / 1000000.0);
-    System.out.println("# of Elements = " + blockCache.getSize());
+    //System.out.println("Cache Hits    = " + hitsInCache.get());
+    //System.out.println("Cache Misses  = " + missesInCache.get());
+    //System.out.println("Store         = " + (storeTime / (double) passes) / 1000000.0);
+    //System.out.println("Fetch         = " + (fetchTime / (double) passes) / 1000000.0);
+    //System.out.println("# of Elements = " + blockCache.getSize());
   }
 
   private static byte[] testData(Random random, int size, byte[] buf) {
@@ -189,7 +189,7 @@ public class BlockCacheTest extends SolrTestCase {
               if (buffer[i] != getByte(globalPos)) {
                 failed.set(true);
                 if (validateFails.incrementAndGet() <= showErrors)
-                  System.out.println("ERROR: read was " + "block=" + block + " blockOffset=" + blockOffset + " len=" + len + " globalPos=" + globalPos + " localReadOffset=" + i + " got=" + buffer[i] + " expected=" + getByte(globalPos));
+                  //System.out.println("ERROR: read was " + "block=" + block + " blockOffset=" + blockOffset + " len=" + len + " globalPos=" + globalPos + " localReadOffset=" + i + " got=" + buffer[i] + " expected=" + getByte(globalPos));
                 break;
               }
             }
@@ -220,11 +220,11 @@ public class BlockCacheTest extends SolrTestCase {
       thread.join();
     }
 
-    System.out.println("# of Elements = " + blockCache.getSize());
-    System.out.println("Cache Hits = " + hitsInCache.get());
-    System.out.println("Cache Misses = " + missesInCache.get());
-    System.out.println("Cache Store Fails = " + storeFails.get());
-    System.out.println("Blocks with Errors = " + validateFails.get());
+    //System.out.println("# of Elements = " + blockCache.getSize());
+    //System.out.println("Cache Hits = " + hitsInCache.get());
+    //System.out.println("Cache Misses = " + missesInCache.get());
+    //System.out.println("Cache Store Fails = " + storeFails.get());
+    //System.out.println("Blocks with Errors = " + validateFails.get());
 
     assertFalse("cached bytes differ from expected", failed.get());
   }
@@ -363,7 +363,7 @@ public class BlockCacheTest extends SolrTestCase {
 
     // Thread.sleep(1000); // need to wait if executor is used for listener?
     long cacheSize = cache.estimatedSize();
-    System.out.println("Done! # of Elements = " + cacheSize + " inserts=" + inserts.get() + " removals=" + removals.get() + " hits=" + hits.get() + " maxObservedSize=" + maxObservedSize);
+    //System.out.println("Done! # of Elements = " + cacheSize + " inserts=" + inserts.get() + " removals=" + removals.get() + " hits=" + hits.get() + " maxObservedSize=" + maxObservedSize);
     assertEquals("cache size different from (inserts - removal)", cacheSize,  inserts.get() - removals.get());
     assertFalse(failed.get());
   }
diff --git a/solr/core/src/test/org/apache/solr/store/blockcache/BlockDirectoryTest.java b/solr/core/src/test/org/apache/solr/store/blockcache/BlockDirectoryTest.java
index 843a2ee..34a5671 100644
--- a/solr/core/src/test/org/apache/solr/store/blockcache/BlockDirectoryTest.java
+++ b/solr/core/src/test/org/apache/solr/store/blockcache/BlockDirectoryTest.java
@@ -179,7 +179,7 @@ public class BlockDirectoryTest extends SolrTestCaseJ4 {
       fail("Test failed on pass [" + i + "]");
     }
     long t2 = System.nanoTime();
-    System.out.println("Total time is " + ((t2 - t1)/1000000) + "ms");
+    //System.out.println("Total time is " + ((t2 - t1)/1000000) + "ms");
   }
 
   @Test
diff --git a/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java b/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java
index 129afe5..d97fb42 100644
--- a/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java
+++ b/solr/core/src/test/org/apache/solr/store/hdfs/HdfsDirectoryTest.java
@@ -172,7 +172,7 @@ public class HdfsDirectoryTest extends SolrTestCaseJ4 {
       for (; i< (TEST_NIGHTLY ? 10 : 1); i++) {
         Directory fsDir = new ByteBuffersDirectory();
         String name = getName();
-        System.out.println("Working on pass [" + i  +"] contains [" + names.contains(name) + "]");
+        //System.out.println("Working on pass [" + i  +"] contains [" + names.contains(name) + "]");
         names.add(name);
         createFile(name,fsDir,directory);
         assertInputsEquals(name,fsDir,directory);
diff --git a/solr/core/src/test/org/apache/solr/update/PeerSyncWithBufferUpdatesTest.java b/solr/core/src/test/org/apache/solr/update/PeerSyncWithBufferUpdatesTest.java
index e0fa900..0f2d169 100644
--- a/solr/core/src/test/org/apache/solr/update/PeerSyncWithBufferUpdatesTest.java
+++ b/solr/core/src/test/org/apache/solr/update/PeerSyncWithBufferUpdatesTest.java
@@ -200,7 +200,7 @@ public class PeerSyncWithBufferUpdatesTest  extends BaseDistributedSearchTestCas
   }
 
   private void validateDocs(Set<Integer> docsAdded, SolrClient client0, SolrClient client1) throws SolrServerException, IOException {
-    System.out.println("commits");
+    //System.out.println("commits");
     client0.commit();
     client1.commit();
     QueryResponse qacResponse;
diff --git a/solr/core/src/test/org/apache/solr/update/PeerSyncWithIndexFingerprintCachingTest.java b/solr/core/src/test/org/apache/solr/update/PeerSyncWithIndexFingerprintCachingTest.java
index e4a5d6c..142cca5 100644
--- a/solr/core/src/test/org/apache/solr/update/PeerSyncWithIndexFingerprintCachingTest.java
+++ b/solr/core/src/test/org/apache/solr/update/PeerSyncWithIndexFingerprintCachingTest.java
@@ -80,13 +80,13 @@ public class PeerSyncWithIndexFingerprintCachingTest extends BaseDistributedSear
     client0.commit(); client1.commit();
     
     IndexFingerprint before = getFingerprint(client0, Long.MAX_VALUE);
-    System.out.println("before " + before);
+    //System.out.println("before " + before);
     
     del(client0, params(DISTRIB_UPDATE_PARAM,FROM_LEADER,"_version_",Long.toString(-++v)), "2");
     client0.commit(); 
     
     IndexFingerprint after = getFingerprint(client0, Long.MAX_VALUE);
-    System.out.println("after " + after);
+    //System.out.println("after " + after);
     // make sure fingerprint before and after deleting are not the same
     Assert.assertTrue(IndexFingerprint.compare(before, after) != 0);
     
diff --git a/solr/core/src/test/org/apache/solr/update/processor/AddSchemaFieldsUpdateProcessorFactoryTest.java b/solr/core/src/test/org/apache/solr/update/processor/AddSchemaFieldsUpdateProcessorFactoryTest.java
index a49e9fe..77ee600 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/AddSchemaFieldsUpdateProcessorFactoryTest.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/AddSchemaFieldsUpdateProcessorFactoryTest.java
@@ -272,7 +272,7 @@ public class AddSchemaFieldsUpdateProcessorFactoryTest extends UpdateProcessorTe
     String content = "This is a text that should be copied to a string field and cutoff at 10 characters";
     SolrInputDocument d = processAdd("add-fields-maxchars", doc(f("id", "1"), f(fieldName, content)));
     assertNotNull(d);
-    System.out.println("Document is "+d);
+    //System.out.println("Document is "+d);
     schema = h.getCore().getLatestSchema();
     assertNotNull(schema.getFieldOrNull(fieldName));
     assertNotNull(schema.getFieldOrNull(strFieldName));
diff --git a/solr/core/src/test/org/apache/solr/update/processor/DimensionalRoutedAliasUpdateProcessorTest.java b/solr/core/src/test/org/apache/solr/update/processor/DimensionalRoutedAliasUpdateProcessorTest.java
index 47707ab..90cb0dd 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/DimensionalRoutedAliasUpdateProcessorTest.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/DimensionalRoutedAliasUpdateProcessorTest.java
@@ -105,7 +105,7 @@ public class DimensionalRoutedAliasUpdateProcessorTest extends RoutedAliasUpdate
 
     SolrParams params = dra.getParams();
     assertEquals("Dimensional[TIME,CATEGORY]", params.get(CollectionAdminRequest.RoutedAliasAdminRequest.ROUTER_TYPE_NAME));
-    System.out.println(params);
+    //System.out.println(params);
     assertEquals("20", params.get("router.1.maxCardinality"));
     assertEquals("2019-07-01T00:00:00Z", params.get("router.0.start"));
 
@@ -366,7 +366,7 @@ public class DimensionalRoutedAliasUpdateProcessorTest extends RoutedAliasUpdate
 
     SolrParams params = dra.getParams();
     assertEquals("Dimensional[CATEGORY,TIME]", params.get(CollectionAdminRequest.RoutedAliasAdminRequest.ROUTER_TYPE_NAME));
-    System.out.println(params);
+    //System.out.println(params);
     assertEquals("20", params.get("router.0.maxCardinality"));
     assertEquals("2019-07-01T00:00:00Z", params.get("router.1.start"));
 
diff --git a/solr/core/src/test/org/apache/solr/update/processor/TestDocBasedVersionConstraints.java b/solr/core/src/test/org/apache/solr/update/processor/TestDocBasedVersionConstraints.java
index 8780e9b..0a1e787 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/TestDocBasedVersionConstraints.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/TestDocBasedVersionConstraints.java
@@ -524,7 +524,7 @@ public class TestDocBasedVersionConstraints extends SolrTestCaseJ4 {
     version = "1";
     updateJ(json("[{\"id\": \"a\", \"name\": \"a1\", \"my_version_l\": " + version + "}]"),
             params("update.chain", "external-version-support-missing"));
-    System.out.println("send b");
+    //System.out.println("send b");
     updateJ(json("[{\"id\": \"b\", \"name\": \"b1\", \"my_version_l\": " + version + "}]"),
             params("update.chain", "external-version-support-missing"));
     assertU(commit());
diff --git a/solr/core/src/test/org/apache/solr/update/processor/TimeRoutedAliasUpdateProcessorTest.java b/solr/core/src/test/org/apache/solr/update/processor/TimeRoutedAliasUpdateProcessorTest.java
index e794b50..e276f28 100644
--- a/solr/core/src/test/org/apache/solr/update/processor/TimeRoutedAliasUpdateProcessorTest.java
+++ b/solr/core/src/test/org/apache/solr/update/processor/TimeRoutedAliasUpdateProcessorTest.java
@@ -718,7 +718,7 @@ public class TimeRoutedAliasUpdateProcessorTest extends RoutedAliasUpdateProcess
   public void testDateMathInStart() throws Exception {
     ClusterStateProvider clusterStateProvider = solrClient.getClusterStateProvider();
     Class<? extends ClusterStateProvider> aClass = clusterStateProvider.getClass();
-    System.out.println("CSPROVIDER:" + aClass);
+    //System.out.println("CSPROVIDER:" + aClass);
 
     // This test prevents recurrence of SOLR-13760
 
diff --git a/solr/core/src/test/org/apache/solr/util/BitSetPerf.java b/solr/core/src/test/org/apache/solr/util/BitSetPerf.java
index 60a7386..13d2ca5 100644
--- a/solr/core/src/test/org/apache/solr/util/BitSetPerf.java
+++ b/solr/core/src/test/org/apache/solr/util/BitSetPerf.java
@@ -49,8 +49,8 @@ public class BitSetPerf {
 
   public static void main(String[] args) {
     if (args.length<5) {
-      System.out.println("BitSetTest <bitSetSize> <numSets> <numBitsSet> <testName> <iter> <impl>");
-      System.out.println("  impl => open for FixedBitSet");
+      //System.out.println("BitSetTest <bitSetSize> <numSets> <numBitsSet> <testName> <iter> <impl>");
+      //System.out.println("  impl => open for FixedBitSet");
     }
     int bitSetSize = Integer.parseInt(args[0]);
     int numSets = Integer.parseInt(args[1]);
@@ -186,8 +186,8 @@ public class BitSetPerf {
       }
     }
 
-    System.out.println("ret="+ret);
-    System.out.println("TIME="+timer.getTime());
+    //System.out.println("ret="+ret);
+    //System.out.println("TIME="+timer.getTime());
 
   }
 
diff --git a/solr/test-framework/src/java/org/apache/solr/SolrTestCase.java b/solr/test-framework/src/java/org/apache/solr/SolrTestCase.java
index 267104d..a427e50 100644
--- a/solr/test-framework/src/java/org/apache/solr/SolrTestCase.java
+++ b/solr/test-framework/src/java/org/apache/solr/SolrTestCase.java
@@ -202,7 +202,7 @@ public class SolrTestCase extends LuceneTestCase {
     log.info("*******************************************************************");
     log.info("@BeforeClass ------------------------------------------------------");
 
-    //interruptThreadsOnTearDown("ParWork", false);
+    interruptThreadsOnTearDown("ParWork", false);
 
     if (!SysStats.getSysStats().isAlive()) {
       SysStats.reStartSysStats();
@@ -394,26 +394,26 @@ public class SolrTestCase extends LuceneTestCase {
    * Assumption failure occures in a {@link BeforeClass} method
    * @lucene.internal
    */
-  @BeforeClass
-  public static void checkSyspropForceBeforeClassAssumptionFailure() {
-    // ant test -Dargs="-Dtests.force.assumption.failure.beforeclass=true"
-    final String PROP = "tests.force.assumption.failure.beforeclass";
-    assumeFalse(PROP + " == true",
-                systemPropertyAsBoolean(PROP, false));
-  }
+//  @BeforeClass
+//  public static void checkSyspropForceBeforeClassAssumptionFailure() {
+//    // ant test -Dargs="-Dtests.force.assumption.failure.beforeclass=true"
+//    final String PROP = "tests.force.assumption.failure.beforeclass";
+//    assumeFalse(PROP + " == true",
+//                systemPropertyAsBoolean(PROP, false));
+//  }
   
   /** 
    * Special hook for sanity checking if any tests trigger failures when an
    * Assumption failure occures in a {@link Before} method
    * @lucene.internal
    */
-  @Before
-  public void checkSyspropForceBeforeAssumptionFailure() {
-    // ant test -Dargs="-Dtests.force.assumption.failure.before=true"
-    final String PROP = "tests.force.assumption.failure.before";
-    assumeFalse(PROP + " == true",
-                systemPropertyAsBoolean(PROP, false));
-  }
+//  @Before
+//  public void checkSyspropForceBeforeAssumptionFailure() {
+//    // ant test -Dargs="-Dtests.force.assumption.failure.before=true"
+//    final String PROP = "tests.force.assumption.failure.before";
+//    assumeFalse(PROP + " == true",
+//                systemPropertyAsBoolean(PROP, false));
+//  }
 
   public static String TEST_HOME() {
     return getFile("solr/collection1").getParent();
@@ -519,7 +519,7 @@ public class SolrTestCase extends LuceneTestCase {
 
     StartupLoggingUtils.shutdown();
 
-    //checkForInterruptRequest();
+    checkForInterruptRequest();
   }
 
   private static SSLTestConfig buildSSLConfig() {
@@ -567,19 +567,19 @@ public class SolrTestCase extends LuceneTestCase {
       return;
     }
 
-    System.out.println("DO FORCED INTTERUPTS");
+   // System.out.println("DO FORCED INTTERUPTS");
     //  we need to filter and only do this for known threads? dont want users to count on this behavior unless necessary
     String testThread = Thread.currentThread().getName();
-    System.out.println("test thread:" + testThread);
+   // System.out.println("test thread:" + testThread);
     ThreadGroup tg = Thread.currentThread().getThreadGroup();
-    System.out.println("test group:" + tg.getName());
+  //  System.out.println("test group:" + tg.getName());
     Set<Map.Entry<Thread,StackTraceElement[]>> threadSet = Thread.getAllStackTraces().entrySet();
-    System.out.println("thread count: " + threadSet.size());
+  //  System.out.println("thread count: " + threadSet.size());
     for (Map.Entry<Thread,StackTraceElement[]> threadEntry : threadSet) {
       Thread thread = threadEntry.getKey();
       ThreadGroup threadGroup = thread.getThreadGroup();
       if (threadGroup != null) {
-        System.out.println("thread is " + thread.getName());
+    //    System.out.println("thread is " + thread.getName());
         if (threadGroup.getName().equals(tg.getName()) && !thread.getName().startsWith("SUITE")) {
           interrupt(thread, nameContains);
           continue;
@@ -589,7 +589,7 @@ public class SolrTestCase extends LuceneTestCase {
       while (threadGroup != null && threadGroup.getParent() != null && !thread.getName().startsWith("SUITE")) {
         threadGroup = threadGroup.getParent();
         if (nameContains != null && threadGroup.getName().equals(tg.getName())) {
-          System.out.println("thread is " + thread.getName());
+        //  System.out.println("thread is " + thread.getName());
           interrupt(thread, nameContains);
           continue;
         }
@@ -604,13 +604,16 @@ public class SolrTestCase extends LuceneTestCase {
 
   private static void interrupt(Thread thread, String nameContains) {
     if ((nameContains != null && thread.getName().contains(nameContains)) || (interuptThreadWithNameContains != null && thread.getName().contains(interuptThreadWithNameContains)) ) {
-
-      System.out.println("interrupt on " + thread.getName());
-      thread.interrupt();
-      try {
-        thread.join(5000);
-      } catch (InterruptedException e) {
-        ParWork.propegateInterrupt(e);
+      if (thread.getState() == Thread.State.TERMINATED) {
+        System.out.println("interrupt on " + thread.getName());
+        thread.interrupt();
+        try {
+          thread.join(100);
+        } catch (InterruptedException e) {
+          ParWork.propegateInterrupt(e);
+        }
+      } else {
+        System.out.println("state:" + thread.getState());
       }
     }