Details
-
Bug
-
Status: Closed
-
Normal
-
Resolution: Fixed
-
SERVER 6.1.0
-
None
-
Froyo
-
Needs Assessment
-
Bug Fix
-
This fixes a dependency issue, allowing Puppet Server packages to be started under Java 11.
-
Needs Assessment
Description
Puppet Version: 6.1.0
Puppet Server Version: 6.1.0
OS Name/Version: Fedora 29 (using RHEL7 packages)
I run Puppet Server on a Fedora 29 host, by using the Puppet packages in the RHEL7 yum repository.
For the last month or so, I have been testing running Puppet Server 6.0.x using OpenJDK 11. As far as I can tell, this worked perfectly. The only artifact I noticed was this start-up message:
2018-12-17T11:38:50.020003-05:00 myhost puppetserver[1878]: WARNING: An illegal reflective access operation has occurred
|
2018-12-17T11:38:50.020003-05:00 myhost puppetserver[1878]: WARNING: Illegal reflective access by org.jruby.ext.openssl.SecurityHelper (file:/tmp/jruby-1894/jruby15087714324251502022jopenssl.jar) to constructor java.security.cert.CertificateFactory(java.security.cert.CertificateFactorySpi,java.security.Provider,java.lang.String)
|
2018-12-17T11:38:50.020003-05:00 myhost puppetserver[1878]: WARNING: Please consider reporting this to the maintainers of org.jruby.ext.openssl.SecurityHelper
|
2018-12-17T11:38:50.020003-05:00 myhost puppetserver[1878]: WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
|
2018-12-17T11:38:50.021000-05:00 myhost puppetserver[1878]: WARNING: All illegal access operations will be denied in a future release
|
So I was excited to see the Puppet Server 6.1.0 release, with "official" support for OpenJDK 11.
But, irony of ironies, if I attempt to start Puppet Server 6.1.0 with OpenJDK 11, it outright dies. Here's the stack backtrace:
Dec 18 17:59:54 myhost systemd[1]: Starting puppetserver Service...
|
Dec 18 18:00:05 myhost puppetserver[4700]: Exception in thread "main" java.lang.ExceptionInInitializerError
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at dynapath.defaults__init.load(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at dynapath.defaults__init.<clinit>(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName0(Native Method)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName(Class.java:398)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2204)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2213)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.loadClassForName(RT.java:2232)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:450)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:426)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load$fn__6548.invoke(core.clj:6046)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.invokeStatic(core.clj:6045)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.doInvoke(core.clj:6029)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:408)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invokeStatic(core.clj:5848)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invoke(core.clj:5843)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib$fn__6493.invoke(core.clj:5888)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.invokeStatic(core.clj:5887)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.doInvoke(core.clj:5868)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:142)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.invokeStatic(core.clj:5925)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.doInvoke(core.clj:5909)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.invokeStatic(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.doInvoke(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:421)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at dynapath.util$loading__6434__auto____14850.invoke(util.clj:1)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at dynapath.util__init.load(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at dynapath.util__init.<clinit>(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName0(Native Method)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName(Class.java:398)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2204)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2213)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.loadClassForName(RT.java:2232)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:450)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:426)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load$fn__6548.invoke(core.clj:6046)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.invokeStatic(core.clj:6045)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.doInvoke(core.clj:6029)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:408)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invokeStatic(core.clj:5848)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invoke(core.clj:5843)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib$fn__6493.invoke(core.clj:5888)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.invokeStatic(core.clj:5887)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.doInvoke(core.clj:5868)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:142)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.invokeStatic(core.clj:5925)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.doInvoke(core.clj:5909)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.invokeStatic(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.doInvoke(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:421)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.kitchensink.classpath$loading__6434__auto____14848.invoke(classpath.clj:1)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.kitchensink.classpath__init.load(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.kitchensink.classpath__init.<clinit>(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName0(Native Method)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName(Class.java:398)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2204)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2213)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.loadClassForName(RT.java:2232)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:450)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:426)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load$fn__6548.invoke(core.clj:6046)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.invokeStatic(core.clj:6045)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.doInvoke(core.clj:6029)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:408)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invokeStatic(core.clj:5848)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invoke(core.clj:5843)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib$fn__6493.invoke(core.clj:5888)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.invokeStatic(core.clj:5887)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.doInvoke(core.clj:5868)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:142)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.invokeStatic(core.clj:5925)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.doInvoke(core.clj:5909)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.invokeStatic(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.doInvoke(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:457)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.plugins$loading__6434__auto____14846.invoke(plugins.clj:1)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.plugins__init.load(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.plugins__init.<clinit>(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName0(Native Method)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName(Class.java:398)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2204)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2213)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.loadClassForName(RT.java:2232)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:450)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:426)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load$fn__6548.invoke(core.clj:6046)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.invokeStatic(core.clj:6045)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.doInvoke(core.clj:6029)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:408)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invokeStatic(core.clj:5848)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invoke(core.clj:5843)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib$fn__6493.invoke(core.clj:5888)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.invokeStatic(core.clj:5887)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.doInvoke(core.clj:5868)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:142)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.invokeStatic(core.clj:5925)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.doInvoke(core.clj:5909)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.invokeStatic(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.doInvoke(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:1096)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.core$loading__6434__auto____199.invoke(core.clj:1)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.core__init.load(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.core__init.<clinit>(Unknown Source)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName0(Native Method)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName(Class.java:398)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2204)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2213)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.loadClassForName(RT.java:2232)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:450)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.load(RT.java:426)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load$fn__6548.invoke(core.clj:6046)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.invokeStatic(core.clj:6045)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load.doInvoke(core.clj:6029)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:408)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invokeStatic(core.clj:5848)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_one.invoke(core.clj:5843)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib$fn__6493.invoke(core.clj:5888)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.invokeStatic(core.clj:5887)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_lib.doInvoke(core.clj:5868)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:142)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.invokeStatic(core.clj:5925)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$load_libs.doInvoke(core.clj:5909)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:659)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.invokeStatic(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$require.doInvoke(core.clj:5947)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.invoke(RestFn.java:408)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.main$_main.invokeStatic(main.clj:6)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at puppetlabs.trapperkeeper.main$_main.doInvoke(main.clj:4)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.Var.applyTo(Var.java:702)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.core$apply.invokeStatic(core.clj:657)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.main$main_opt.invokeStatic(main.clj:317)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.main$main_opt.invoke(main.clj:313)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.main$main.invokeStatic(main.clj:424)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.main$main.doInvoke(main.clj:387)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RestFn.applyTo(RestFn.java:137)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.Var.applyTo(Var.java:702)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.main.main(main.java:37)
|
Dec 18 18:00:05 myhost puppetserver[4700]: Caused by: java.lang.ClassNotFoundException: sun.misc.Launcher$ExtClassLoader
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName0(Native Method)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at java.base/java.lang.Class.forName(Class.java:398)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2204)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at clojure.lang.RT.classForName(RT.java:2213)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011at dynapath.defaults$fn__14921.<clinit>(defaults.clj:14)
|
Dec 18 18:00:05 myhost puppetserver[4700]: #011... 151 more
|
Dec 18 18:00:05 myhost puppetserver[4700]: Background process 4707 exited before start had completed
|
Dec 18 18:00:05 myhost systemd[1]: puppetserver.service: Control process exited, code=exited status=1
|
Dec 18 18:00:05 myhost systemd[1]: puppetserver.service: Failed with result 'exit-code'.
|
Dec 18 18:00:05 myhost systemd[1]: Failed to start puppetserver Service.
|
If I switch the default JDK back to OpenJDK 8, then Puppet Server starts normally.
Desired Behavior:
Puppet Server 6.1.x should not die with OpenJDK 11—especially since Puppet Server 6.0.x worked just fine with OpenJDK 11!
Actual Behavior:
Puppet Server 6.1.x dies with OpenJDK 11.
Attachments
Issue Links
- relates to
-
SERVER-2421 Puppetserver fails to reload with dynapath 1.0
-
- Closed
-