Java 8 u242 JRE has broken instrumentation attach provers in lucee 5.2 and 5.3

Description

To test, start a server, hit a URL, edit the CF code to cause a recompile and hit the same URL again in the browser. Update 242 to java 8 when using a JRE breaks the JVM attach process necessary for instrumentation to work. Using a JDK does not produce the error. Rolling back to Java 8 update 232 also does not error. The issue only happens on a JRE that is Java 8 specifically update 242.

I've seen a number of reports come in from Lucee users and here are the test I ran just now on Windows 7 with CommandBox.

  • Lucee 5.2.9 openjdk 8 u242 JDK - Works without error

  • Lucee 5.2.9 open jdk 8 u242 JRE - Web page errors and is unusable - Instrumentation;no providers installed;com.sun.tools.attach.AttachNotSupportedException

  • Lucee 5.2.9 OpenJDK 8 u232 JRE - Works without error

  • Lucee 5.3.4 open jdk 8 u242 JRE - No error in web page, but logs fill with this exception: no providers installed;no providers installed;com.sun.tools.attach.AttachNotSupportedException

  • Lucee 5.3.4 open jdk 8 u242 JDK - Works without error

I don't know if this is a bug in Java 8 update 242 or an issue with the way Lucee is using the attach provider, but I've does lots of googling and can't find any JDK bugs so I want to document this somewhere since so many Lucee users have been hitting the issue.

Below are the commands in CommandBox to start up each server from above along with the full error from the web context's application log file.

start cfengine=lucee@5.2.9 javaVersion=openjdk8_jdk_jdk8u242-b08
"INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [java.net.URLClassLoader@1a451d4d]" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [lucee.commons.io.res.util.ResourceClassLoader@a52f0b3]" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","looking for tools.jar" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","couldn't find tools.jar at: D:\.Command Box\serverJREs\openjdk8_jdk_x64_windows_hotspot_jdk8u242-b08\jre\lib\tools.jar" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","tools.jar used:D:\.Command Box\serverJREs\openjdk8_jdk_x64_windows_hotspot_jdk8u242-b08\lib\tools.jar" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","loaded VirtualMachine class:com.sun.tools.attach.VirtualMachine" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","try to load agent (path:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\lucee-external-agent.jar)" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","pid:4940" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-4","02/24/2020","17:42:48","Instrumentation","ExternalAgent does contain a Instrumentation instance"

start cfengine=lucee@5.2.9 javaVersion=openjdk8_jre_jdk8u242-b08
"Severity","ThreadID","Date","Time","Application","Message" "INFO","main","02/24/2020","17:44:40","OSGi","add bundle:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-web\context\lucee-admin.lar" "INFO","main","02/24/2020","17:44:40","OSGi","add bundle:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-web\context\lucee-doc.lar" "INFO","main","02/24/2020","17:44:40","OSGi","add bundle:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-web\context\lucee-context.lar" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [java.net.URLClassLoader@1a451d4d]" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [lucee.commons.io.res.util.ResourceClassLoader@552d75a8]" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","looking for tools.jar" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","couldn't find tools.jar at: D:\.Command Box\serverJREs\openjdk8_jre_x64_windows_hotspot_jdk8u242-b08\lib\tools.jar" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","found D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\tools-windows-7u25.jar" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","tools.jar used:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\tools-windows-7u25.jar" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","add D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\bin to library path" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","loaded VirtualMachine class:com.sun.tools.attach.VirtualMachine" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","try to load agent (path:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\lucee-external-agent.jar)" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","Instrumentation","pid:19136" "INFO","XNIO-1 task-14","02/24/2020","17:45:02","","Instrumentation;no providers installed;com.sun.tools.attach.AttachNotSupportedException: no providers installed at com.sun.tools.attach.VirtualMachine.attach(VirtualMachine.java:208) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at lucee.runtime.instrumentation.InstrumentationFactory.loadAgent(InstrumentationFactory.java:335) at lucee.runtime.instrumentation.InstrumentationFactory.access$400(InstrumentationFactory.java:58) at lucee.runtime.instrumentation.InstrumentationFactory$1.run(InstrumentationFactory.java:112) at java.security.AccessController.doPrivileged(Native Method) at lucee.runtime.instrumentation.InstrumentationFactory.getInstrumentation(InstrumentationFactory.java:76) at lucee.commons.lang.PhysicalClassLoader.$fr$loadClass(PhysicalClassLoader.java:180) at lucee.commons.lang.PhysicalClassLoader.loadClass(PhysicalClassLoader.java) at lucee.runtime.MappingImpl.getPhysicalClass(MappingImpl.java:249) at lucee.runtime.PageSourceImpl._compile(PageSourceImpl.java:403) at lucee.runtime.PageSourceImpl.compile(PageSourceImpl.java:368) at lucee.runtime.PageSourceImpl.loadPhysical(PageSourceImpl.java:309) at lucee.runtime.PageSourceImpl.loadPageThrowTemplateException(PageSourceImpl.java:218) at lucee.runtime.PageSourceImpl.loadPage(PageSourceImpl.java:961) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:927) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:823) at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:218) at lucee.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:43) at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2464) at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2454) at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2427) at lucee.runtime.engine.Request.exe(Request.java:44) at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1090) at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1038) at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:102) at lucee.loader.servlet.CFMLServlet.service(CFMLServlet.java:51) at javax.servlet.http.HttpServlet.service(HttpServlet.java:791) at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129) at org.cfmlprojects.regexpathinfofilter.RegexPathInfoFilter.doFilter(RegexPathInfoFilter.java:47) at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:134) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doNext(FusionReactorRequestHandler.java:772) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doHttpServletRequest(FusionReactorRequestHandler.java:344) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doFusionRequest(FusionReactorRequestHandler.java:207) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.handle(FusionReactorRequestHandler.java:809) at com.intergral.fusionreactor.j2ee.filter.FusionReactorCoreFilter.doFilter(FusionReactorCoreFilter.java:36) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:71) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intergral.fusionreactor.agent.filter.FusionReactorStaticFilter.doFilter(FusionReactorStaticFilter.java:54) at com.intergral.fusionreactor.agent.pointcuts.NewFilterChainPointCut$1.invoke(NewFilterChainPointCut.java:42) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java) at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68) at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68) at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:132) at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269) at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78) at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133) at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130) at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249) at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78) at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99) at io.undertow.server.Connectors.executeRootHandler(Connectors.java:376) at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) "

start cfengine=lucee@5.2.9 javaVersion=openjdk8_jre_jdk8u232-b09
"INFO","XNIO-1 task-8","02/24/2020","17:46:54","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [java.net.URLClassLoader@1a451d4d]" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [lucee.commons.io.res.util.ResourceClassLoader@1db1e89d]" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","looking for tools.jar" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","couldn't find tools.jar at: D:\.Command Box\serverJREs\openjdk8_jre_x64_windows_hotspot_jdk8u232-b09\lib\tools.jar" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","found D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\tools-windows-7u25.jar" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","tools.jar used:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\tools-windows-7u25.jar" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","add D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\bin to library path" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","loaded VirtualMachine class:com.sun.tools.attach.VirtualMachine" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","try to load agent (path:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.2.9.31\WEB-INF\lucee-server\context\lucee-external-agent.jar)" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","pid:8532" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-8","02/24/2020","17:46:55","Instrumentation","ExternalAgent does contain a Instrumentation instance"

start cfengine=lucee@5.3.4 javaVersion=openjdk8_jre_jdk8u242-b08
"INFO","XNIO-1 task-3","02/24/2020","17:50:50","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-3","02/24/2020","17:50:50","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [java.net.URLClassLoader@2e005c4b]" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [lucee.commons.io.res.util.ResourceClassLoader@3f470e0]" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","looking for tools.jar" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","couldn't find tools.jar at: D:\.Command Box\serverJREs\openjdk8_jre_x64_windows_hotspot_jdk8u242-b08\lib\tools.jar" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","found D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\tools-windows-7u25.jar" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","tools.jar used:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\tools-windows-7u25.jar" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","deploy /resource/bin/windows64/attach.dll to D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\bin\attach.dll" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","add D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\bin to library path" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","loaded VirtualMachine class:com.sun.tools.attach.VirtualMachine" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","create D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\lucee-external-agent.jar" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","try to load agent (path:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\lucee-external-agent.jar)" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","pid:10044" "INFO","XNIO-1 task-3","02/24/2020","17:50:51","Instrumentation","no providers installed;no providers installed;com.sun.tools.attach.AttachNotSupportedException: no providers installed at com.sun.tools.attach.VirtualMachine.attach(VirtualMachine.java:208) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at lucee.runtime.instrumentation.InstrumentationFactory.loadAgent(InstrumentationFactory.java:328) at lucee.runtime.instrumentation.InstrumentationFactory.access$400(InstrumentationFactory.java:58) at lucee.runtime.instrumentation.InstrumentationFactory$1.run(InstrumentationFactory.java:109) at java.security.AccessController.doPrivileged(Native Method) at lucee.runtime.instrumentation.InstrumentationFactory.getInstrumentation(InstrumentationFactory.java:75) at lucee.commons.lang.PhysicalClassLoader.$fr$loadClass(PhysicalClassLoader.java:192) at lucee.commons.lang.PhysicalClassLoader.loadClass(PhysicalClassLoader.java) at lucee.runtime.MappingImpl.getPhysicalClass(MappingImpl.java:253) at lucee.runtime.PageSourceImpl._compile(PageSourceImpl.java:405) at lucee.runtime.PageSourceImpl.compile(PageSourceImpl.java:369) at lucee.runtime.PageSourceImpl.loadPhysical(PageSourceImpl.java:315) at lucee.runtime.PageSourceImpl.loadPageThrowTemplateException(PageSourceImpl.java:221) at lucee.runtime.PageSourceImpl.loadPage(PageSourceImpl.java:981) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:939) at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:836) at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:216) at lucee.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:42) at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2415) at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2405) at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2380) at lucee.runtime.engine.Request.exe(Request.java:43) at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1110) at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1056) at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:97) at lucee.loader.servlet.CFMLServlet.service(CFMLServlet.java:51) at javax.servlet.http.HttpServlet.service(HttpServlet.java:791) at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129) at org.cfmlprojects.regexpathinfofilter.RegexPathInfoFilter.doFilter(RegexPathInfoFilter.java:47) at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:134) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doNext(FusionReactorRequestHandler.java:772) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doHttpServletRequest(FusionReactorRequestHandler.java:344) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.doFusionRequest(FusionReactorRequestHandler.java:207) at com.intergral.fusionreactor.j2ee.filter.FusionReactorRequestHandler.handle(FusionReactorRequestHandler.java:809) at com.intergral.fusionreactor.j2ee.filter.FusionReactorCoreFilter.doFilter(FusionReactorCoreFilter.java:36) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intergral.fusionreactor.j2ee.filterchain.WrappedFilterChain.doFilter(WrappedFilterChain.java:71) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intergral.fusionreactor.agent.filter.FusionReactorStaticFilter.doFilter(FusionReactorStaticFilter.java:54) at com.intergral.fusionreactor.agent.pointcuts.NewFilterChainPointCut$1.invoke(NewFilterChainPointCut.java:42) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java) at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68) at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68) at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:132) at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269) at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78) at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133) at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130) at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249) at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78) at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99) at io.undertow.server.Connectors.executeRootHandler(Connectors.java:376) at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) "

start cfengine=lucee@5.3.4 javaVersion=openjdk8_jdk_jdk8u242-b08
"INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [java.net.URLClassLoader@2e005c4b]" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","not found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [lucee.commons.io.res.util.ResourceClassLoader@d08dd16]" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","looking for tools.jar" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","couldn't find tools.jar at: D:\.Command Box\serverJREs\openjdk8_jdk_x64_windows_hotspot_jdk8u242-b08\jre\lib\tools.jar" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","tools.jar used:D:\.Command Box\serverJREs\openjdk8_jdk_x64_windows_hotspot_jdk8u242-b08\lib\tools.jar" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","loaded VirtualMachine class:com.sun.tools.attach.VirtualMachine" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","try to load agent (path:D:\.Command Box\server\C3D9460AC18B18AC462BBBF1E02425C8-cfconfig\lucee-5.3.4.77\WEB-INF\lucee-server\context\lucee-external-agent.jar)" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","pid:11132" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","found [lucee.runtime.instrumentation.ExternalAgent] in ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]" "INFO","XNIO-1 task-3","02/24/2020","17:54:25","Instrumentation","ExternalAgent does contain an Instrumentation instance"

Environment

None

Activity

Brad Wood 
15 December 2020 at 17:33

This was never really "fixed" per se-- but Lucee basically completely rewrote how instrumentation works in such a manner that the code in question is no longer even in use. I wish this ticket had gotten the proper attention back when I put it in as Java 8 update 242 caused many issues for Lucee users, but I suppose it's water under the bridge now. On the latest versions of Java and the latest versions of Lucee, this has not been an issue.

Pothys - MitrahSoft 
15 December 2020 at 10:05

Now, I've checked this issue with lucee latest version 5.3.8.119-SNAPSHOT on commandBox with that openjdk 11 and 14 JRK/JRE.
Seems, the problem is in lucee's old version. Doesn't happened with latest versions of lucee.
, could you check if possible and report here.

Pothys - MitrahSoft 
27 February 2020 at 11:40

I checked this ticket & confirmed the issue happened on lucee with the version as you said. And also checked with version 5.3.5.80-SNAPSHOT.
It works fine. It didn't throw any error in the log file and web page.

Zac Spitzer 
26 February 2020 at 13:34

I had a look thru the java jira, could this be related?

instrumentation.retransformClasses cause coredump
https://bugs.openjdk.java.net/browse/JDK-8230930?jql=project%20%3D%20JDK%20AND%20affectedVersion%20%3D%20openjdk8u242%20ORDER%20BY%20created%20DESC

Brad Wood 
25 February 2020 at 00:56

On a related note, here are the full release notes for JDK Update 242, but I've reviewed them and don't see anything that catches my eye right off.

https://adoptopenjdk.net/release_notes.html#jdk8u242

Unresolved

Details

Assignee

Reporter

Priority

New Issue warning screen

Before you create a new Issue, please post to the mailing list first https://dev.lucee.org

Once the issue has been verified, one of the Lucee team will ask you to file an issue

Created 25 February 2020 at 00:53
Updated 21 May 2024 at 20:08