Skip to content

Commit a40be71

Browse files
Remove priviledged thread factory (fix integrated into latest Netty 4.1.118.Final) (#17325) (#17326)
(cherry picked from commit f40004a) Signed-off-by: Andriy Redko <[email protected]> Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 8a5e784 commit a40be71

File tree

3 files changed

+6
-57
lines changed

3 files changed

+6
-57
lines changed

modules/transport-netty4/src/main/java/org/opensearch/transport/SharedGroupFactory.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
import io.netty.channel.nio.NioEventLoopGroup;
4848
import io.netty.util.concurrent.Future;
4949

50-
import static org.opensearch.common.util.concurrent.OpenSearchExecutors.privilegedDaemonThreadFactory;
50+
import static org.opensearch.common.util.concurrent.OpenSearchExecutors.daemonThreadFactory;
5151

5252
/**
5353
* Creates and returns {@link io.netty.channel.EventLoopGroup} instances. It will return a shared group for
@@ -91,7 +91,7 @@ public synchronized SharedGroup getHttpGroup() {
9191
if (dedicatedHttpGroup == null) {
9292
NioEventLoopGroup eventLoopGroup = new NioEventLoopGroup(
9393
httpWorkerCount,
94-
privilegedDaemonThreadFactory(settings, HttpServerTransport.HTTP_SERVER_WORKER_THREAD_NAME_PREFIX)
94+
daemonThreadFactory(settings, HttpServerTransport.HTTP_SERVER_WORKER_THREAD_NAME_PREFIX)
9595
);
9696
dedicatedHttpGroup = new SharedGroup(new RefCountedGroup(eventLoopGroup));
9797
}
@@ -103,7 +103,7 @@ private SharedGroup getGenericGroup() {
103103
if (genericGroup == null) {
104104
EventLoopGroup eventLoopGroup = new NioEventLoopGroup(
105105
workerCount,
106-
privilegedDaemonThreadFactory(settings, TcpTransport.TRANSPORT_WORKER_THREAD_NAME_PREFIX)
106+
daemonThreadFactory(settings, TcpTransport.TRANSPORT_WORKER_THREAD_NAME_PREFIX)
107107
);
108108
this.genericGroup = new RefCountedGroup(eventLoopGroup);
109109
} else {

plugins/transport-reactor-netty4/src/main/java/org/opensearch/transport/reactor/SharedGroupFactory.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import io.netty.channel.nio.NioEventLoopGroup;
3030
import io.netty.util.concurrent.Future;
3131

32-
import static org.opensearch.common.util.concurrent.OpenSearchExecutors.privilegedDaemonThreadFactory;
32+
import static org.opensearch.common.util.concurrent.OpenSearchExecutors.daemonThreadFactory;
3333

3434
/**
3535
* Creates and returns {@link io.netty.channel.EventLoopGroup} instances. It will return a shared group for
@@ -89,7 +89,7 @@ public synchronized SharedGroup getHttpGroup() {
8989
if (dedicatedHttpGroup == null) {
9090
NioEventLoopGroup eventLoopGroup = new NioEventLoopGroup(
9191
httpWorkerCount,
92-
privilegedDaemonThreadFactory(settings, HttpServerTransport.HTTP_SERVER_WORKER_THREAD_NAME_PREFIX)
92+
daemonThreadFactory(settings, HttpServerTransport.HTTP_SERVER_WORKER_THREAD_NAME_PREFIX)
9393
);
9494
dedicatedHttpGroup = new SharedGroup(new RefCountedGroup(eventLoopGroup));
9595
}
@@ -101,7 +101,7 @@ private SharedGroup getGenericGroup() {
101101
if (genericGroup == null) {
102102
EventLoopGroup eventLoopGroup = new NioEventLoopGroup(
103103
workerCount,
104-
privilegedDaemonThreadFactory(settings, TcpTransport.TRANSPORT_WORKER_THREAD_NAME_PREFIX)
104+
daemonThreadFactory(settings, TcpTransport.TRANSPORT_WORKER_THREAD_NAME_PREFIX)
105105
);
106106
this.genericGroup = new RefCountedGroup(eventLoopGroup);
107107
} else {

server/src/main/java/org/opensearch/common/util/concurrent/OpenSearchExecutors.java

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,6 @@
4343
import org.opensearch.threadpool.RunnableTaskExecutionListener;
4444
import org.opensearch.threadpool.TaskAwareRunnable;
4545

46-
import java.security.AccessController;
47-
import java.security.PrivilegedAction;
4846
import java.util.List;
4947
import java.util.Optional;
5048
import java.util.concurrent.AbstractExecutorService;
@@ -386,19 +384,6 @@ public static ThreadFactory daemonThreadFactory(String namePrefix) {
386384
return new OpenSearchThreadFactory(namePrefix);
387385
}
388386

389-
public static ThreadFactory privilegedDaemonThreadFactory(Settings settings, String namePrefix) {
390-
return privilegedDaemonThreadFactory(threadName(settings, namePrefix));
391-
}
392-
393-
public static ThreadFactory privilegedDaemonThreadFactory(String nodeName, String namePrefix) {
394-
assert nodeName != null && false == nodeName.isEmpty();
395-
return privilegedDaemonThreadFactory(threadName(nodeName, namePrefix));
396-
}
397-
398-
public static ThreadFactory privilegedDaemonThreadFactory(String namePrefix) {
399-
return new PrivilegedOpenSearchThreadFactory(namePrefix);
400-
}
401-
402387
/**
403388
* A thread factory
404389
*
@@ -426,42 +411,6 @@ public Thread newThread(Runnable r) {
426411

427412
}
428413

429-
/**
430-
* A thread factory
431-
*
432-
* @opensearch.internal
433-
*/
434-
static class PrivilegedOpenSearchThreadFactory implements ThreadFactory {
435-
436-
final ThreadGroup group;
437-
final AtomicInteger threadNumber = new AtomicInteger(1);
438-
final String namePrefix;
439-
440-
@SuppressWarnings("removal")
441-
PrivilegedOpenSearchThreadFactory(String namePrefix) {
442-
this.namePrefix = namePrefix;
443-
SecurityManager s = System.getSecurityManager();
444-
group = (s != null) ? s.getThreadGroup() : Thread.currentThread().getThreadGroup();
445-
}
446-
447-
@Override
448-
public Thread newThread(Runnable r) {
449-
final Thread t = new Thread(group, new Runnable() {
450-
@SuppressWarnings({ "deprecation", "removal" })
451-
@Override
452-
public void run() {
453-
AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
454-
r.run();
455-
return null;
456-
});
457-
}
458-
}, namePrefix + "[T#" + threadNumber.getAndIncrement() + "]", 0);
459-
t.setDaemon(true);
460-
return t;
461-
}
462-
463-
}
464-
465414
/**
466415
* Cannot instantiate.
467416
*/

0 commit comments

Comments
 (0)