From 0885d16ac22a0ecd2267bf3c8818a3a8a5a9dadb Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Fri, 31 Jul 2026 07:48:54 +0000
Subject: [PATCH] Fix CodeQL warning-severity alerts: missed wakeups, resource leaks, escaping threads (#790)

---
 opendj-server-legacy/src/main/java/org/opends/server/loggers/TextDebugLogPublisher.java |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/loggers/TextDebugLogPublisher.java b/opendj-server-legacy/src/main/java/org/opends/server/loggers/TextDebugLogPublisher.java
index f42868f..1341774 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/loggers/TextDebugLogPublisher.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/loggers/TextDebugLogPublisher.java
@@ -13,6 +13,7 @@
  *
  * Copyright 2006-2009 Sun Microsystems, Inc.
  * Portions Copyright 2013-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
  */
 package org.opends.server.loggers;
 
@@ -133,6 +134,9 @@
         writer.addRetentionPolicy(DirectoryServer.getRetentionPolicy(dn));
       }
 
+      // Rotation only starts once the policies above are registered.
+      writer.start();
+
       if(config.isAsynchronous())
       {
         this.writer = newAsyncWriter(writer, config);
@@ -271,7 +275,7 @@
   private AsynchronousTextWriter newAsyncWriter(MultifileTextWriter writer, FileBasedDebugLogPublisherCfg config)
   {
     String name = "Asynchronous Text Writer for " + config.dn();
-    return new AsynchronousTextWriter(name, config.getQueueSize(), config.isAutoFlush(), writer);
+    return new AsynchronousTextWriter(name, config.getQueueSize(), config.isAutoFlush(), writer).start();
   }
 
   private void configure(MultifileTextWriter mfWriter, FileBasedDebugLogPublisherCfg config) throws DirectoryException

--
Gitblit v1.10.0