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/07/30 16:00:42 UTC

[lucene-solr] 06/06: @472 Dial a few things in a little.

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 f7e8f7ad15a07f09f899a7aae2eceb3ae39e2b71
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Thu Jul 30 10:58:04 2020 -0500

    @472 Dial a few things in a little.
---
 solr/core/src/test/org/apache/solr/TestHighlightDedupGrouping.java | 2 +-
 solr/solrj/src/java/org/apache/solr/common/ParWork.java            | 2 +-
 solr/solrj/src/java/org/apache/solr/common/ParWorkExecService.java | 6 +++---
 solr/solrj/src/java/org/apache/solr/common/util/SysStats.java      | 2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/solr/core/src/test/org/apache/solr/TestHighlightDedupGrouping.java b/solr/core/src/test/org/apache/solr/TestHighlightDedupGrouping.java
index e9bf787..9ceb62b 100644
--- a/solr/core/src/test/org/apache/solr/TestHighlightDedupGrouping.java
+++ b/solr/core/src/test/org/apache/solr/TestHighlightDedupGrouping.java
@@ -82,7 +82,7 @@ public class TestHighlightDedupGrouping extends BaseDistributedSearchTestCase {
     handle.put("grouped", UNORDERED);   // distrib grouping doesn't guarantee order of top level group commands
 
     int numDocs = TestUtil.nextInt(random(), 100, TEST_NIGHTLY ? 1000 : 125);
-    int numGroups = TestUtil.nextInt(random(), 1, (numDocs / 50) + 1);
+    int numGroups = TestUtil.nextInt(random(), 1, (TEST_NIGHTLY ? (numDocs / 50) + 1 : 1));
     int[] docsInGroup = new int[numGroups + 1];
     int percentDuplicates = TestUtil.nextInt(random(), 1, TEST_NIGHTLY ? 25 : 5);
     for (int docid = 0 ; docid < numDocs ; ++docid) {
diff --git a/solr/solrj/src/java/org/apache/solr/common/ParWork.java b/solr/solrj/src/java/org/apache/solr/common/ParWork.java
index 88bf51c..e664236 100644
--- a/solr/solrj/src/java/org/apache/solr/common/ParWork.java
+++ b/solr/solrj/src/java/org/apache/solr/common/ParWork.java
@@ -554,7 +554,7 @@ public class ParWork implements Closeable {
 //                List<Future<Object>> results = executor.invokeAll(closeCalls, 8, TimeUnit.SECONDS);
 
                 for (Future<Object> future : results) {
-                  future.get(10000, TimeUnit.MILLISECONDS); // nocommit
+                  future.get(Integer.getInteger("solr.parwork.task_timeout", 60000), TimeUnit.MILLISECONDS); // nocommit
                   if (!future.isDone() || future.isCancelled()) {
                     log.warn("A task did not finish isDone={} isCanceled={}", future.isDone(), future.isCancelled());
                   //  throw new SolrException(SolrException.ErrorCode.SERVER_ERROR, "A task did nor finish" +future.isDone()  + " " + future.isCancelled());
diff --git a/solr/solrj/src/java/org/apache/solr/common/ParWorkExecService.java b/solr/solrj/src/java/org/apache/solr/common/ParWorkExecService.java
index 5e830cf..a8b285f 100644
--- a/solr/solrj/src/java/org/apache/solr/common/ParWorkExecService.java
+++ b/solr/solrj/src/java/org/apache/solr/common/ParWorkExecService.java
@@ -24,7 +24,7 @@ public class ParWorkExecService implements ExecutorService {
   private static final Logger log = LoggerFactory
       .getLogger(MethodHandles.lookup().lookupClass());
 
-  private static final int MAX_AVAILABLE = ParWork.PROC_COUNT;
+  private static final int MAX_AVAILABLE = Math.max(ParWork.PROC_COUNT / 2, 3);
   private final Semaphore available = new Semaphore(MAX_AVAILABLE, true);
 
   private final Phaser phaser = new Phaser(1) {
@@ -102,7 +102,7 @@ public class ParWorkExecService implements ExecutorService {
           return CompletableFuture.completedFuture(callable.call());
         }
       } else {
-        available.acquireUninterruptibly();
+      //  available.acquireUninterruptibly();
       }
       Future<T> future = service.submit(callable);
       return new Future<T>() {
@@ -196,7 +196,7 @@ public class ParWorkExecService implements ExecutorService {
         return CompletableFuture.completedFuture(null);
       }
     } else {
-      available.acquireUninterruptibly();
+     // available.acquireUninterruptibly();
     }
     Future<?> future = service.submit(runnable);
 
diff --git a/solr/solrj/src/java/org/apache/solr/common/util/SysStats.java b/solr/solrj/src/java/org/apache/solr/common/util/SysStats.java
index ae6339f..241ebad 100644
--- a/solr/solrj/src/java/org/apache/solr/common/util/SysStats.java
+++ b/solr/solrj/src/java/org/apache/solr/common/util/SysStats.java
@@ -142,7 +142,7 @@ public class SysStats extends Thread {
     }
 
     public double getAvarageUsagePerCPU() {
-        return getTotalUsage() / opBean.getAvailableProcessors();
+        return getTotalUsage() / ParWork.PROC_COUNT;
     }
 
     public double getUsageByThread(Thread t) {