[ 
https://issues.apache.org/jira/browse/GERONIMO-4549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12678007#action_12678007
 ] 

Jack Cai commented on GERONIMO-4549:
------------------------------------

I took quite some time to look into this problem since it's marked as a blocker 
and we are approching 2.1.4 release. I've nailed the problem down to the 
xbean-naming code, but I'm not sure how to fix it. Would like to get other's 
advice. Below is the summary of my findings -

1. The sympton is that when a connection factory and a queue are created and 
started, and then stopped/uninstalled, their JNDI entry will continue to exist 
in the global context unless the server is restarted.

2. When stoping/uninstalling them, 
org.apache.xbean.naming.context.AbstractContext.removeDeepBinding() will 
eventually be called, which finds the last context whose size > 2 in the 
context chain, then tries to remove the entry from this context (say Context 
A). This results in calling 
org.apache.xbean.naming.context.WritableContext$NestedWritableContext.removeBinding(),
 which uses removeNotEmptyContext=false to do removal. Unfortunately the 
context (say Context B) being removed (in Context A) is always not empty, 
resulting a ContextNotEmptyException which is ignored in 
org.apache.geronimo.gjndi.KernelContextGBean.removeBinding().

I don't have enough background to understand why Context A is chosen this way 
and why removeNotEmptyContext is set to false. Can anyone shed some light here?

> JMS resource jndi entries are not removed after uninstalling the JMS connect 
> adapter
> ------------------------------------------------------------------------------------
>
>                 Key: GERONIMO-4549
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4549
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: ActiveMQ
>    Affects Versions: 2.1.4
>            Reporter: Forrest Xia
>            Priority: Blocker
>             Fix For: 2.1.4, 2.2
>
>
> Steps to reproduce this problem:
> 1. login admin console
> 2. Create a ActiveMQ resource connector with the wizard
> 3. Deploy it and check it is in running state
> 4. Click J2EE connector to uninstall it
> 5. Check JNDI viewer, you will see the JNDI entry still there, even you've 
> uninstalled it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to