tomee-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Milos Volauf (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OPENEJB-2119) Incorrect binary tree - IvmContext
Date Fri, 16 Oct 2015 15:45:05 GMT

    [ https://issues.apache.org/jira/browse/OPENEJB-2119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14960909#comment-14960909
] 

Milos Volauf commented on OPENEJB-2119:
---------------------------------------

Hi Romain,
the original problem happens during startup.
Here is the exception:
{noformat}
javax.naming.NameAlreadyBoundException: ParsedName{path=SendEmailFunctionImpl!com.whitestein.lsps.human.function.SendEmailFunction,
component=SendEmailFunctionImpl!com.whitestein.lsps.human.function.SendEmailFunction}
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:158)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:168)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:175)
	at org.apache.openejb.core.ivm.naming.NameNode.bind(NameNode.java:168)
	at org.apache.openejb.core.ivm.naming.IvmContext.bind(IvmContext.java:308)
	at org.apache.openejb.core.ivm.naming.IvmContext.rebind(IvmContext.java:322)
	at org.apache.openejb.assembler.classic.Assembler.bindGlobals(Assembler.java:931)
	at org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1366)
	at org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1087)
	at org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:130)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
	at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar(TomcatWebAppBuilder.java:648)
	at org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps(TomcatWebAppBuilder.java:616)
	at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:855)
	at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:623)
	at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:619)
{noformat}

> Incorrect binary tree - IvmContext
> ----------------------------------
>
>                 Key: OPENEJB-2119
>                 URL: https://issues.apache.org/jira/browse/OPENEJB-2119
>             Project: OpenEJB
>          Issue Type: Bug
>            Reporter: Milos Volauf
>            Priority: Critical
>         Attachments: Testing.java
>
>
> I get many javax.naming.NameAlreadyBoundException exceptions so I digged into org.apache.openejb.core.ivm.naming.IvmContext
and org.apache.openejb.core.ivm.naming.NameNode.
> I was strange that NameAlreadyBoundException was fired from IvmContext.rebind, which
does unbind and then bind.
> The debugging showed me that binary tree (implemented by NameNode) gets sometimes into
incorrect state and consequently unbind does not find the node.
> The problem is that IvmContext has a reference to NameNode and calls bind() but the binary
tree is correct only if bind() starts at the tree root. There is one big tree and several
contexts have their nodes in it (IvmContext.mynode) and bind new nodes starting in mynode.
> I prepared a small test case which shows how the tree can enter into incorrect state.
> I used openejb-core-4.7.1



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message