You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@solr.apache.org by cp...@apache.org on 2021/06/25 16:24:34 UTC
[solr] branch main updated: SOLR-15485: discourage
Collections.singleton.forEach use (#179)
This is an automated email from the ASF dual-hosted git repository.
cpoerschke pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/main by this push:
new 00e23c1 SOLR-15485: discourage Collections.singleton.forEach use (#179)
00e23c1 is described below
commit 00e23c119d4e2626e23d1bd2995494f669bebc1d
Author: Christine Poerschke <cp...@apache.org>
AuthorDate: Fri Jun 25 17:24:24 2021 +0100
SOLR-15485: discourage Collections.singleton.forEach use (#179)
---
gradle/validation/validate-source-patterns.gradle | 1 +
.../src/java/org/apache/solr/core/CoreContainer.java | 5 +----
.../org/apache/solr/BaseDistributedSearchTestCase.java | 4 +---
.../apache/solr/cloud/AbstractFullDistribZkTestBase.java | 16 ++++------------
4 files changed, 7 insertions(+), 19 deletions(-)
diff --git a/gradle/validation/validate-source-patterns.gradle b/gradle/validation/validate-source-patterns.gradle
index 74a5af3..c39b4aa 100644
--- a/gradle/validation/validate-source-patterns.gradle
+++ b/gradle/validation/validate-source-patterns.gradle
@@ -156,6 +156,7 @@ class ValidateSourcePatternsTask extends DefaultTask {
(~$/\$$Header\b/$) : 'svn keyword',
(~$/\$$Source\b/$) : 'svn keyword',
(~$/^\uFEFF/$) : 'UTF-8 byte order mark',
+ (~$/Collections\.singleton.*forEach/$) : 'potentially unnecessary forEach() use with Collections.singleton',
(~$/import java\.lang\.\w+;/$) : 'java.lang import is unnecessary'
]
diff --git a/solr/core/src/java/org/apache/solr/core/CoreContainer.java b/solr/core/src/java/org/apache/solr/core/CoreContainer.java
index 90908cb..5c93c8f 100644
--- a/solr/core/src/java/org/apache/solr/core/CoreContainer.java
+++ b/solr/core/src/java/org/apache/solr/core/CoreContainer.java
@@ -125,7 +125,6 @@ import java.security.spec.InvalidKeySpecException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
import java.util.Date;
import java.util.LinkedHashSet;
import java.util.List;
@@ -1143,9 +1142,7 @@ public class CoreContainer {
} finally {
try {
if (updateShardHandler != null) {
- customThreadPool.submit(() -> Collections.singleton(shardHandlerFactory).parallelStream().forEach(c -> {
- updateShardHandler.close();
- }));
+ customThreadPool.submit(() -> updateShardHandler.close());
}
} finally {
try {
diff --git a/solr/test-framework/src/java/org/apache/solr/BaseDistributedSearchTestCase.java b/solr/test-framework/src/java/org/apache/solr/BaseDistributedSearchTestCase.java
index f91f22f..6759af8 100644
--- a/solr/test-framework/src/java/org/apache/solr/BaseDistributedSearchTestCase.java
+++ b/solr/test-framework/src/java/org/apache/solr/BaseDistributedSearchTestCase.java
@@ -414,9 +414,7 @@ public abstract class BaseDistributedSearchTestCase extends SolrTestCaseJ4 {
protected void destroyServers() throws Exception {
ExecutorService customThreadPool = ExecutorUtil.newMDCAwareCachedThreadPool(new SolrNamedThreadFactory("closeThreadPool"));
- customThreadPool.submit(() -> Collections.singleton(controlClient).parallelStream().forEach(c -> {
- IOUtils.closeQuietly(c);
- }));
+ customThreadPool.submit(() -> IOUtils.closeQuietly(controlClient));
customThreadPool.submit(() -> {
try {
diff --git a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
index 3b200ac..2ed7ae3 100644
--- a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
+++ b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
@@ -1718,25 +1718,17 @@ public abstract class AbstractFullDistribZkTestBase extends AbstractDistribZkTes
protected void destroyServers() throws Exception {
ExecutorService customThreadPool = ExecutorUtil.newMDCAwareCachedThreadPool(new SolrNamedThreadFactory("closeThreadPool"));
- customThreadPool.submit(() -> Collections.singleton(commonCloudSolrClient).parallelStream().forEach(c -> {
- IOUtils.closeQuietly(c);
- }));
+ customThreadPool.submit(() -> IOUtils.closeQuietly(commonCloudSolrClient));
- customThreadPool.submit(() -> Collections.singleton(controlClient).parallelStream().forEach(c -> {
- IOUtils.closeQuietly(c);
- }));
+ customThreadPool.submit(() -> IOUtils.closeQuietly(controlClient));
customThreadPool.submit(() -> coreClients.parallelStream().forEach(c -> {
IOUtils.closeQuietly(c);
}));
- customThreadPool.submit(() -> Collections.singletonList(controlClientCloud).parallelStream().forEach(c -> {
- IOUtils.closeQuietly(c);
- }));
+ customThreadPool.submit(() -> IOUtils.closeQuietly(controlClientCloud));
- customThreadPool.submit(() -> Collections.singletonList(cloudClient).parallelStream().forEach(c -> {
- IOUtils.closeQuietly(c);
- }));
+ customThreadPool.submit(() -> IOUtils.closeQuietly(cloudClient));
ExecutorUtil.shutdownAndAwaitTermination(customThreadPool);