[jira] [Commented] (CASSANDRA-14173) JDK 8u162 breaks JMX integration

2018-01-21 Thread Abdulfattah Safa (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16333945#comment-16333945
 ] 

Abdulfattah Safa commented on CASSANDRA-14173:
--

161 has the same issue. I had to downgrade to 152 to get it working again.

> JDK 8u162 breaks JMX integration
> 
>
> Key: CASSANDRA-14173
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14173
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Sam Tunnicliffe
>Priority: Critical
> Fix For: 3.11.2
>
> Attachments: cassandra-14173.39-trunk.patch, cassandra-14173.patch
>
>
> {\{org.apache.cassandra.utils.JMXServerUtils}} which is used to 
> programatically configure the JMX server and RMI registry (CASSANDRA-2967, 
> CASSANDRA-10091) depends on some JDK internal classes/interfaces. A change to 
> one of these, introduced in Oracle JDK 1.8.0_162 is incompatible, which means 
> we cannot build using that JDK version. Upgrading the JVM on a node running 
> 3.6+ will result in Cassandra being unable to start.
> {noformat}
> ERROR [main] 2018-01-18 07:33:18,804 CassandraDaemon.java:706 - Exception 
> encountered during startup
> java.lang.AbstractMethodError: 
> org.apache.cassandra.utils.JMXServerUtils$Exporter.exportObject(Ljava/rmi/Remote;ILjava/rmi/server/RMIClientSocketFactory;Ljava/rmi/server/RMIServerSocketFactory;Lsun/misc/ObjectInputFilter;)Ljava/rmi/Remote;
>     at 
> javax.management.remote.rmi.RMIJRMPServerImpl.export(RMIJRMPServerImpl.java:150)
>  ~[na:1.8.0_162]
>     at 
> javax.management.remote.rmi.RMIJRMPServerImpl.export(RMIJRMPServerImpl.java:135)
>  ~[na:1.8.0_162]
>     at 
> javax.management.remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:405)
>  ~[na:1.8.0_162]
>     at 
> org.apache.cassandra.utils.JMXServerUtils.createJMXServer(JMXServerUtils.java:104)
>  ~[apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.maybeInitJmx(CassandraDaemon.java:143)
>  [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:188) 
> [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:600)
>  [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:689) 
> [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]{noformat}
> This is also a problem for CASSANDRA-9608, as the internals are completely 
> re-organised in JDK9, so a more stable solution that can be applied to both 
> JDK8 & JDK9 is required.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14173) JDK 8u162 breaks JMX integration

2018-01-20 Thread Edward Ribeiro (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=1683#comment-1683
 ] 

Edward Ribeiro commented on CASSANDRA-14173:


Yes [~mshuler], the first cut of this patch *requires* >= 1.8u161 :( 

OTOH, I have put together another version (see attachment) that compiles on 
both 152 and 161. *_But_* *_I still need to verify if it doesn't break C* at 
runtime, though!_* (heh, changing jdk back and forth messed up my IDE so it 
dragged me down)

AFAIK, 161 build has both the legacy and the new constructor (the one with 
_ObjectInputFilter_), so it should work as intended, but I am not sure about 
152 yet. _Please_, let me know what you think, thanks.

> JDK 8u162 breaks JMX integration
> 
>
> Key: CASSANDRA-14173
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14173
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Sam Tunnicliffe
>Priority: Critical
> Fix For: 3.11.2
>
> Attachments: cassandra-14173.2.patch, cassandra-14173.patch
>
>
> {\{org.apache.cassandra.utils.JMXServerUtils}} which is used to 
> programatically configure the JMX server and RMI registry (CASSANDRA-2967, 
> CASSANDRA-10091) depends on some JDK internal classes/interfaces. A change to 
> one of these, introduced in Oracle JDK 1.8.0_162 is incompatible, which means 
> we cannot build using that JDK version. Upgrading the JVM on a node running 
> 3.6+ will result in Cassandra being unable to start.
> {noformat}
> ERROR [main] 2018-01-18 07:33:18,804 CassandraDaemon.java:706 - Exception 
> encountered during startup
> java.lang.AbstractMethodError: 
> org.apache.cassandra.utils.JMXServerUtils$Exporter.exportObject(Ljava/rmi/Remote;ILjava/rmi/server/RMIClientSocketFactory;Ljava/rmi/server/RMIServerSocketFactory;Lsun/misc/ObjectInputFilter;)Ljava/rmi/Remote;
>     at 
> javax.management.remote.rmi.RMIJRMPServerImpl.export(RMIJRMPServerImpl.java:150)
>  ~[na:1.8.0_162]
>     at 
> javax.management.remote.rmi.RMIJRMPServerImpl.export(RMIJRMPServerImpl.java:135)
>  ~[na:1.8.0_162]
>     at 
> javax.management.remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:405)
>  ~[na:1.8.0_162]
>     at 
> org.apache.cassandra.utils.JMXServerUtils.createJMXServer(JMXServerUtils.java:104)
>  ~[apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.maybeInitJmx(CassandraDaemon.java:143)
>  [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:188) 
> [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:600)
>  [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:689) 
> [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]{noformat}
> This is also a problem for CASSANDRA-9608, as the internals are completely 
> re-organised in JDK9, so a more stable solution that can be applied to both 
> JDK8 & JDK9 is required.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-14173) JDK 8u162 breaks JMX integration

2018-01-20 Thread Michael Shuler (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16333282#comment-16333282
 ] 

Michael Shuler commented on CASSANDRA-14173:


Build fails on JDK 1.8u152 - this patch would appear to *require* >= 1.8u161?
{noformat}
(trunk *)mshuler@hana:~/git/cassandra$ git diff
diff --git a/src/java/org/apache/cassandra/utils/JMXServerUtils.java 
b/src/java/org/apache/cassandra/utils/JMXServerUtils.java
index e78ed01746..072f237049 100644
--- a/src/java/org/apache/cassandra/utils/JMXServerUtils.java
+++ b/src/java/org/apache/cassandra/utils/JMXServerUtils.java
@@ -46,6 +46,7 @@ import org.slf4j.LoggerFactory;
import com.sun.jmx.remote.internal.RMIExporter;
import com.sun.jmx.remote.security.JMXPluggableAuthenticator;
import org.apache.cassandra.auth.jmx.AuthenticationProxy;
+import sun.misc.ObjectInputFilter;
import sun.rmi.registry.RegistryImpl;
import sun.rmi.server.UnicastServerRef2;

@@ -308,10 +309,10 @@ public class JMXServerUtils
// to our custom Registry too.
private Remote connectorServer;

- public Remote exportObject(Remote obj, int port, RMIClientSocketFactory csf, 
RMIServerSocketFactory ssf)
+ public Remote exportObject(Remote obj, int port, RMIClientSocketFactory csf, 
RMIServerSocketFactory ssf, ObjectInputFilter filter)
throws RemoteException
{
- Remote remote = new UnicastServerRef2(port, csf, ssf).exportObject(obj, null, 
true);
+ Remote remote = new UnicastServerRef2(port, csf, ssf, 
filter).exportObject(obj, null, true);
// Keep a reference to the first object exported, the JMXConnectorServer
if (connectorServer == null)
connectorServer = remote;
(trunk *)mshuler@hana:~/git/cassandra$ java -version
java version "1.8.0_152"
Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)
(trunk *)mshuler@hana:~/git/cassandra$ ant
Buildfile: /home/mshuler/git/cassandra/build.xml
Trying to override old definition of task junit

init:
[mkdir] Created dir: /home/mshuler/git/cassandra/build/classes/main
[mkdir] Created dir: /home/mshuler/git/cassandra/build/test/lib
[mkdir] Created dir: /home/mshuler/git/cassandra/build/test/classes
[mkdir] Created dir: /home/mshuler/git/cassandra/build/test/stress-classes
[mkdir] Created dir: /home/mshuler/git/cassandra/src/gen-java
[mkdir] Created dir: /home/mshuler/git/cassandra/build/lib
[mkdir] Created dir: /home/mshuler/git/cassandra/build/jacoco
[mkdir] Created dir: /home/mshuler/git/cassandra/build/jacoco/partials

maven-ant-tasks-localrepo:
[copy] Copying 1 file to /home/mshuler/git/cassandra/build

maven-ant-tasks-download:

maven-ant-tasks-init:

maven-declare-dependencies:

maven-ant-tasks-retrieve-build:
[artifact:dependencies] Building ant file: 
/home/mshuler/git/cassandra/build/build-dependencies.xml
[artifact:dependencies] Building ant file: 
/home/mshuler/git/cassandra/build/build-dependencies-sources.xml
[copy] Copying 61 files to /home/mshuler/git/cassandra/build/lib/jars
[copy] Copying 15 files to /home/mshuler/git/cassandra/build/lib/sources
[copy] Copying 9 files to /home/mshuler/git/cassandra/build/lib/jars
[unzip] Expanding: 
/home/mshuler/git/cassandra/build/lib/jars/org.jacoco.agent-0.7.5.201505241946.jar
 into /home/mshuler/git/cassandra/build/lib/jars

check-gen-cql3-grammar:

gen-cql3-grammar:
[echo] Building Grammar /home/mshuler/git/cassandra/src/antlr/Cql.g ...

generate-cql-html:

generate-jflex-java:
[jflex] Generated: StandardTokenizerImpl.java

build-project:
[echo] apache-cassandra: /home/mshuler/git/cassandra/build.xml
[javac] Compiling 1554 source files to 
/home/mshuler/git/cassandra/build/classes/main
[javac] Note: Processing compiler hints annotations
[javac] Note: Processing compiler hints annotations
[javac] Note: Writing compiler command file at META-INF/hotspot_compiler
[javac] Note: Done processing compiler hints annotations
[javac] 
/home/mshuler/git/cassandra/src/java/org/apache/cassandra/utils/JMXServerUtils.java:305:
 error: Exporter is not abstract and does not override abstract method 
exportObject(Remote,int,RMIClientSocketFactory,RMIServerSocketFactory) in 
RMIExporter
[javac] private static class Exporter implements RMIExporter
[javac] ^
[javac] Note: Some input files use or override a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 1 error

BUILD FAILED
/home/mshuler/git/cassandra/build.xml:762: Compile failed; see the compiler 
error output for details.

Total time: 58 seconds{noformat}

> JDK 8u162 breaks JMX integration
> 
>
> Key: CASSANDRA-14173
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14173
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Sam Tunnicliffe
>   

[jira] [Commented] (CASSANDRA-14173) JDK 8u162 breaks JMX integration

2018-01-20 Thread Edward Ribeiro (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-14173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16333279#comment-16333279
 ] 

Edward Ribeiro commented on CASSANDRA-14173:


Hi guys,

I have uploaded a patch file based on cassandra-3.x branch. Please, see if it 
helps to solve the issue. 

Best regards,

Ed

> JDK 8u162 breaks JMX integration
> 
>
> Key: CASSANDRA-14173
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14173
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Sam Tunnicliffe
>Priority: Critical
> Fix For: 3.11.2
>
> Attachments: cassandra-14173.patch
>
>
> {\{org.apache.cassandra.utils.JMXServerUtils}} which is used to 
> programatically configure the JMX server and RMI registry (CASSANDRA-2967, 
> CASSANDRA-10091) depends on some JDK internal classes/interfaces. A change to 
> one of these, introduced in Oracle JDK 1.8.0_162 is incompatible, which means 
> we cannot build using that JDK version. Upgrading the JVM on a node running 
> 3.6+ will result in Cassandra being unable to start.
> {noformat}
> ERROR [main] 2018-01-18 07:33:18,804 CassandraDaemon.java:706 - Exception 
> encountered during startup
> java.lang.AbstractMethodError: 
> org.apache.cassandra.utils.JMXServerUtils$Exporter.exportObject(Ljava/rmi/Remote;ILjava/rmi/server/RMIClientSocketFactory;Ljava/rmi/server/RMIServerSocketFactory;Lsun/misc/ObjectInputFilter;)Ljava/rmi/Remote;
>     at 
> javax.management.remote.rmi.RMIJRMPServerImpl.export(RMIJRMPServerImpl.java:150)
>  ~[na:1.8.0_162]
>     at 
> javax.management.remote.rmi.RMIJRMPServerImpl.export(RMIJRMPServerImpl.java:135)
>  ~[na:1.8.0_162]
>     at 
> javax.management.remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:405)
>  ~[na:1.8.0_162]
>     at 
> org.apache.cassandra.utils.JMXServerUtils.createJMXServer(JMXServerUtils.java:104)
>  ~[apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.maybeInitJmx(CassandraDaemon.java:143)
>  [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:188) 
> [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:600)
>  [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]
>     at 
> org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:689) 
> [apache-cassandra-3.11.2-SNAPSHOT.jar:3.11.2-SNAPSHOT]{noformat}
> This is also a problem for CASSANDRA-9608, as the internals are completely 
> re-organised in JDK9, so a more stable solution that can be applied to both 
> JDK8 & JDK9 is required.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org