summaryrefslogtreecommitdiffstats
path: root/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java
diff options
context:
space:
mode:
authorSimon Rettberg2024-05-22 16:51:06 +0200
committerSimon Rettberg2024-05-22 16:51:06 +0200
commit18e9d5521c17b5d2f9876088950f10884855a21d (patch)
tree946b7308a6e11a254a51d15da60c936b5ca33fe4 /dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java
parent[server] CoW: Fix calculating copy speed, don't return delay=0 (diff)
downloadtutor-module-18e9d5521c17b5d2f9876088950f10884855a21d.tar.gz
tutor-module-18e9d5521c17b5d2f9876088950f10884855a21d.tar.xz
tutor-module-18e9d5521c17b5d2f9876088950f10884855a21d.zip
[*] Switch to new CascadedThreadPool
Diffstat (limited to 'dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java')
-rw-r--r--dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java11
1 files changed, 6 insertions, 5 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java
index 448bcb68..54a9655e 100644
--- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java
+++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/fileserv/SyncTransferHandler.java
@@ -7,8 +7,8 @@ import java.sql.SQLException;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.SynchronousQueue;
import java.util.concurrent.TimeUnit;
import org.apache.logging.log4j.LogManager;
@@ -32,7 +32,7 @@ import org.openslx.bwlp.thrift.iface.TNotFoundException;
import org.openslx.bwlp.thrift.iface.TTransferRejectedException;
import org.openslx.bwlp.thrift.iface.TransferInformation;
import org.openslx.thrifthelper.ThriftManager;
-import org.openslx.util.GrowingThreadPoolExecutor;
+import org.openslx.util.CascadedThreadPoolExecutor;
import org.openslx.util.PrioThreadFactory;
import org.openslx.util.QuickTimer;
import org.openslx.util.QuickTimer.Task;
@@ -44,10 +44,10 @@ public class SyncTransferHandler {
private static final Logger LOGGER = LogManager.getLogger(SyncTransferHandler.class);
- private static final GrowingThreadPoolExecutor transferPool = new GrowingThreadPoolExecutor(1,
+ private static final CascadedThreadPoolExecutor transferPool = new CascadedThreadPoolExecutor(1,
Constants.MAX_MASTER_UPLOADS + Constants.MAX_MASTER_DOWNLOADS, 1, TimeUnit.MINUTES,
- new ArrayBlockingQueue<Runnable>(1), new PrioThreadFactory("MTransf",
- Thread.NORM_PRIORITY - 3));
+ new SynchronousQueue<Runnable>(), new PrioThreadFactory("MTransf",
+ Thread.NORM_PRIORITY - 3), null);
/**
* All currently running downloads from master, indexed by token, which is == versionId
@@ -119,6 +119,7 @@ public class SyncTransferHandler {
//
static {
+ transferPool.allowCoreThreadTimeOut(true);
QuickTimer.scheduleAtFixedDelay(heartBeatTask, 123, TimeUnit.SECONDS.toMillis(56));
}