[
https://issues.apache.org/jira/browse/CASSANDRA-19001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17782924#comment-17782924
]
Ekaterina Dimitrova commented on CASSANDRA-19001:
-------------------------------------------------
Stepping back for a bit... those internals are also used with JDK11, the
modules were explicitly closed only after Java 11. Thus, we use the
add-exports, add-opens, and that triggers the annoying warnings, etc.
I get the same result if I trigger the same command with JRE11:
{code:java}
bin/nodetool sjk hh -n 10 --live
ERROR 15:45:25,632 Java home points to
/Library/Java/JavaVirtualMachines/temurin-11.jre/Contents/Home make sure it is
not a JRE path
ERROR 15:45:25,634 Failed to add tools.jar to classpath
java.lang.ClassNotFoundException: com.sun.tools.attach.VirtualMachine
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown
Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at org.gridkit.lab.jvm.attach.AttachAPI.<clinit>(AttachAPI.java:52)
at org.gridkit.lab.jvm.attach.AttachManager.<clinit>(AttachManager.java:75)
at org.gridkit.lab.jvm.attach.HeapHisto.getHistoLive(HeapHisto.java:40)
at org.gridkit.jvmtool.cmd.HeapHistoCmd$Histo.run(HeapHistoCmd.java:97)
at org.apache.cassandra.tools.nodetool.Sjk$Wrapper.run(Sjk.java:219)
at org.apache.cassandra.tools.nodetool.Sjk.execute(Sjk.java:101)
at
org.apache.cassandra.tools.NodeTool$NodeToolCmd.runInternal(NodeTool.java:383)
at org.apache.cassandra.tools.nodetool.Sjk.runInternal(Sjk.java:88)
at org.apache.cassandra.tools.NodeTool$NodeToolCmd.run(NodeTool.java:368)
at org.apache.cassandra.tools.NodeTool.execute(NodeTool.java:267)
at org.apache.cassandra.tools.NodeTool.main(NodeTool.java:85)
java.lang.RuntimeException: java.util.concurrent.ExecutionException:
java.lang.NoClassDefFoundError: com/sun/tools/attach/VirtualMachine
{code}
I tested also cassandra-4.1 with JRE11.
{code:java}
bin/nodetool sjk hh -n 10 --live
ERROR 15:56:25,499 Java home points to
/Library/Java/JavaVirtualMachines/temurin-11.jre/Contents/Home make sure it is
not a JRE path
ERROR 15:56:25,500 Failed to add tools.jar to classpath
java.lang.ClassNotFoundException: com.sun.tools.attach.VirtualMachine
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown
Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at org.gridkit.lab.jvm.attach.AttachAPI.<clinit>(AttachAPI.java:52)
at org.gridkit.lab.jvm.attach.AttachManager.<clinit>(AttachManager.java:75)
at org.gridkit.lab.jvm.attach.HeapHisto.getHistoLive(HeapHisto.java:40)
at org.gridkit.jvmtool.cmd.HeapHistoCmd$Histo.run(HeapHistoCmd.java:97)
at org.apache.cassandra.tools.nodetool.Sjk$Wrapper.run(Sjk.java:219)
at org.apache.cassandra.tools.nodetool.Sjk.execute(Sjk.java:101)
at
org.apache.cassandra.tools.NodeTool$NodeToolCmd.runInternal(NodeTool.java:371)
at org.apache.cassandra.tools.nodetool.Sjk.runInternal(Sjk.java:88)
at org.apache.cassandra.tools.NodeTool$NodeToolCmd.run(NodeTool.java:356)
at org.apache.cassandra.tools.NodeTool.execute(NodeTool.java:259)
at org.apache.cassandra.tools.NodeTool.main(NodeTool.java:83)
java.lang.RuntimeException: java.util.concurrent.ExecutionException:
java.lang.NoClassDefFoundError: com/sun/tools/attach/VirtualMachine
{code}
Also, for all the documentation I found, we recommend users use JDK. We test
with JDK.
> Check whether the startup warnings for unknown modules represent a legit
> problem or cosmetic issue
> --------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-19001
> URL: https://issues.apache.org/jira/browse/CASSANDRA-19001
> Project: Cassandra
> Issue Type: Bug
> Components: Local/Other
> Reporter: Ekaterina Dimitrova
> Priority: Normal
> Fix For: 5.0-beta
>
>
> During the 5.0 alpha 2 release
> [vote|https://lists.apache.org/thread/lt3x0obr5cpbcydf5490pj6b2q0mz5zr],
> [~paulo] raised the following concerns:
> {code:java}
> Launched a tarball-based 5.0-alpha2 container on top of
> "eclipse-temurin:17-jre-focal" and the server starts up fine, can run
> nodetool and cqlsh.
> I got these seemingly harmless JDK17 warnings during startup and when
> running nodetool (no warnings on JDK11):
> WARNING: Unknown module: jdk.attach specified to --add-exports
> WARNING: Unknown module: jdk.compiler specified to --add-exports
> WARNING: Unknown module: jdk.compiler specified to --add-opens
> WARNING: A terminally deprecated method in java.lang.System has been called
> WARNING: System::setSecurityManager has been called by
> org.apache.cassandra.security.ThreadAwareSecurityManager
> (file:/opt/cassandra/lib/apache-cassandra-5.0-alpha2-SNAPSHOT.jar)
> WARNING: Please consider reporting this to the maintainers of
> org.apache.cassandra.security.ThreadAwareSecurityManager
> WARNING: System::setSecurityManager will be removed in a future release
> Anybody knows if these warnings are legit/expected ? We can create
> follow-up tickets if needed.
> $ java --version
> openjdk 17.0.9 2023-10-17
> OpenJDK Runtime Environment Temurin-17.0.9+9 (build 17.0.9+9)
> OpenJDK 64-Bit Server VM Temurin-17.0.9+9 (build 17.0.9+9, mixed mode,
> sharing)
> {code}
> {code:java}
> Clarification: - When running nodetool only the "Unknown module" warnings
> show up. All warnings show up during startup.{code}
> We need to verify whether this presents a real problem in the features where
> those modules are expected to be used, or if it is a false alarm.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]