[jboss-jira] [JBoss JIRA] (WFLY-6669) Classloader leak trigerred by DOMNormalizer#abort in xercesImpl-2.11.0.SP4

Mathieu Lachance (JIRA) issues at jboss.org
Fri Jun 3 09:19:00 EDT 2016


Mathieu Lachance created WFLY-6669:
--------------------------------------

             Summary: Classloader leak trigerred by DOMNormalizer#abort in xercesImpl-2.11.0.SP4
                 Key: WFLY-6669
                 URL: https://issues.jboss.org/browse/WFLY-6669
             Project: WildFly
          Issue Type: Bug
          Components: XML Frameworks
    Affects Versions: 10.0.0.Final
            Reporter: Mathieu Lachance
            Assignee: Jason Greene
            Priority: Critical


XERCESJ-1667 is a fix that was incorporated in the SVN trunk of the apache xerces project. Though it was never ported back in JBoss/Xerces github.

In our case, the classloader leak is triggered by the OpenSAML library which depends on Xerces, but lets be honest, this could have been anything.

{code}
15:08:11.554 [stderr] java.lang.RuntimeException.<init>(RuntimeException.java:51)
15:08:11.555 [stderr] 	at org.apache.xerces.dom.DOMNormalizer.<clinit>(DOMNormalizer.java:155)
15:08:11.555 [stderr] 	at org.apache.xml.serialize.DOMSerializerImpl.verify(DOMSerializerImpl.java:973)
15:08:11.555 [stderr] 	at org.apache.xml.serialize.DOMSerializerImpl.prepareForSerialization(DOMSerializerImpl.java:910)
15:08:11.555 [stderr] 	at org.apache.xml.serialize.DOMSerializerImpl.write(DOMSerializerImpl.java:692)
15:08:11.555 [stderr] 	at org.opensaml.xml.util.XMLHelper.writeNode(XMLHelper.java:892)
15:08:11.556 [stderr] 	at org.opensaml.xml.util.XMLHelper.writeNode(XMLHelper.java:872)
15:08:11.556 [stderr] 	at org.opensaml.xml.util.XMLHelper.nodeToString(XMLHelper.java:834)
15:08:11.556 [stderr] 	at org.opensaml.xml.XMLConfigurator.load(XMLConfigurator.java:159)
15:08:11.556 [stderr] 	at org.opensaml.xml.XMLConfigurator.load(XMLConfigurator.java:143)
15:08:11.556 [stderr] 	at org.opensaml.DefaultBootstrap.initializeXMLTooling(DefaultBootstrap.java:224)
15:08:11.556 [stderr] 	at org.opensaml.DefaultBootstrap.initializeXMLTooling(DefaultBootstrap.java:207)
15:08:11.557 [stderr] 	at org.opensaml.DefaultBootstrap.bootstrap(DefaultBootstrap.java:100)
15:08:11.557 [stderr] 	at org.opensaml.PaosBootstrap.bootstrap(PaosBootstrap.java:27)
15:08:11.557 [stderr] 	at org.springframework.security.saml.SAMLBootstrap.postProcessBeanFactory(SAMLBootstrap.java:42)
15:08:11.557 [stderr] 	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:284)
15:08:11.557 [stderr] 	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:181)
15:08:11.557 [stderr] 	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:678)
15:08:11.557 [stderr] 	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:520)
15:08:11.558 [stderr] 	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
15:08:11.558 [stderr] 	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
15:08:11.558 [stderr] 	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
15:08:11.558 [stderr] 	at io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:187)
15:08:11.558 [stderr] 	at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:198)
15:08:11.558 [stderr] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:100)
15:08:11.558 [stderr] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:82)
15:08:11.559 [stderr] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
15:08:11.559 [stderr] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
15:08:11.559 [stderr] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
15:08:11.559 [stderr] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
15:08:11.559 [stderr] 	at java.lang.Thread.run(Thread.java:745)
15:08:11.559 [stderr] 	at org.jboss.threads.JBossThread.run(JBossThread.java:320)
{code}

For more information see:
* https://issues.apache.org/jira/browse/XERCESJ-1667
* https://svn.apache.org/repos/asf/xerces/java/trunk/src/org/apache/xerces/dom/DOMNormalizer.java
* https://github.com/jboss/xerces/pull/13




--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list