From 86c5d6636b373818e6f2f96e8543eaa4922f19c8 Mon Sep 17 00:00:00 2001 From: Dmitry Konstantinov Date: Wed, 20 May 2026 11:41:35 +0100 Subject: [PATCH 1/2] Add -Xlog:async to jdk17/21 options Enable async GC logging for JDK versions which support it to avoid potential hiccups caused by GC log file I/O blocking patch by Dmitry Konstantinov; reviewed by TBD for CASSANDRA-21372 --- conf/jvm17-server.options | 1 + conf/jvm21-server.options | 1 + 2 files changed, 2 insertions(+) diff --git a/conf/jvm17-server.options b/conf/jvm17-server.options index 9a695aa351d7..9e5b82faa055 100644 --- a/conf/jvm17-server.options +++ b/conf/jvm17-server.options @@ -91,6 +91,7 @@ --add-opens java.base/java.nio=ALL-UNNAMED ### GC logging options -- uncomment to enable +-Xlog:async # Java 11 (and newer) GC logging options: # See description of https://bugs.openjdk.java.net/browse/JDK-8046148 for details about the syntax diff --git a/conf/jvm21-server.options b/conf/jvm21-server.options index 2f9e6da941ee..f38ca90a892d 100644 --- a/conf/jvm21-server.options +++ b/conf/jvm21-server.options @@ -111,6 +111,7 @@ ### GC logging options -- uncomment to enable +-Xlog:async # Java 11 (and newer) GC logging options: # See description of https://bugs.openjdk.java.net/browse/JDK-8046148 for details about the syntax From d9ce8164140c118aedc985ea77d64e997ff199ce Mon Sep 17 00:00:00 2001 From: Dmitry Konstantinov Date: Thu, 21 May 2026 13:45:15 +0100 Subject: [PATCH 2/2] Add -Xlog:async to jdk17/21 options Enable async GC logging for JDK versions which support it to avoid potential hiccups caused by GC log file I/O blocking patch by Dmitry Konstantinov; reviewed by TBD for CASSANDRA-21372 --- conf/jvm17-server.options | 5 +++++ conf/jvm21-server.options | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/conf/jvm17-server.options b/conf/jvm17-server.options index 9e5b82faa055..7b399b761134 100644 --- a/conf/jvm17-server.options +++ b/conf/jvm17-server.options @@ -93,6 +93,11 @@ ### GC logging options -- uncomment to enable -Xlog:async +# In async mode JVM writes logs into a circular memory buffer; if the buffer fills up +# before it is drained, log records are silently dropped +# the default buffer size can be adjusted using the next option if needed +# -XX:AsyncLogBufferSize=2m + # Java 11 (and newer) GC logging options: # See description of https://bugs.openjdk.java.net/browse/JDK-8046148 for details about the syntax # The following is the equivalent to -XX:+PrintGCDetails -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=10M diff --git a/conf/jvm21-server.options b/conf/jvm21-server.options index f38ca90a892d..f86170350c93 100644 --- a/conf/jvm21-server.options +++ b/conf/jvm21-server.options @@ -113,6 +113,11 @@ ### GC logging options -- uncomment to enable -Xlog:async +# In async mode JVM writes logs into a circular memory buffer; if the buffer fills up +# before it is drained, log records are silently dropped +# the default buffer size can be adjusted using the next option if needed +# -XX:AsyncLogBufferSize=2m + # Java 11 (and newer) GC logging options: # See description of https://bugs.openjdk.java.net/browse/JDK-8046148 for details about the syntax # The following is the equivalent to -XX:+PrintGCDetails -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=10M