You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Ivan <xh...@gmail.com> on 2010/10/27 07:43:49 UTC

destory method is called twice while the child is destoryed directly

Hi,
    While calling the method destory() on the StandardContext directly, it
seems that the method destoryInternal() is called twice in the
LifecycleMBeanBase, the two stacktraces are below :
    a.  LifecycleMBeanBase.unregister(ObjectName) line: 191
         LifecycleMBeanBase.destroyInternal() line: 73
         ContainerBase.destroyInternal() line: 1109
         StandardContext.destroyInternal() line: 5114
         LifecycleBase.destroy() line: 271
         ContainerBase.removeChild(Container) line: 963
         ContainerBase.destroyInternal() line: 1106
         StandardContext.destroyInternal() line: 5114
         LifecycleBase.destroy() line: 271
         ...
     b. LifecycleMBeanBase.unregister(ObjectName) line: 191
         LifecycleMBeanBase.destroyInternal() line: 73
         ContainerBase.destroyInternal() line: 1109
         StandardContext.destroyInternal() line: 5114
         LifecycleBase.destroy() line: 271
         ...

     So is it by desgin or some code changes might be needed ? Thanks.

-- 
Ivan

Re: destory method is called twice while the child is destoryed directly

Posted by Ivan <xh...@gmail.com>.
Yes, I am using 7.0.4. Will create a entry in the bugzila system
Thanks.

2010/10/28 Mark Thomas <ma...@apache.org>

> On 28/10/2010 02:20, Ivan wrote:
> > Thanks for clarifying it, so do the devs have plan for it ?
>
> Yes. What? Fix it. When? TBD.
>
> Creating a bugzilla entry will ensure it doesn't get forgotten.
>
> I see you still haven't told us which version you are using. I assume
> you've tested 7.0.4.
>
> Mark
>
> > Hope it could be fixed soon.
> >
> > 2010/10/27 Mark Thomas <ma...@apache.org>
> >
> >> On 27/10/2010 06:43, Ivan wrote:
> >>> Hi,
> >>>     While calling the method destory() on the StandardContext directly,
> >> it
> >>> seems that the method destoryInternal() is called twice in the
> >>> LifecycleMBeanBase, the two stacktraces are below :
> >>>     a.  LifecycleMBeanBase.unregister(ObjectName) line: 191
> >>>          LifecycleMBeanBase.destroyInternal() line: 73
> >>>          ContainerBase.destroyInternal() line: 1109
> >>>          StandardContext.destroyInternal() line: 5114
> >>>          LifecycleBase.destroy() line: 271
> >>>          ContainerBase.removeChild(Container) line: 963
> >>>          ContainerBase.destroyInternal() line: 1106
> >>>          StandardContext.destroyInternal() line: 5114
> >>>          LifecycleBase.destroy() line: 271
> >>>          ...
> >>>      b. LifecycleMBeanBase.unregister(ObjectName) line: 191
> >>>          LifecycleMBeanBase.destroyInternal() line: 73
> >>>          ContainerBase.destroyInternal() line: 1109
> >>>          StandardContext.destroyInternal() line: 5114
> >>>          LifecycleBase.destroy() line: 271
> >>>          ...
> >>>
> >>>      So is it by desgin or some code changes might be needed ? Thanks.
> >>
> >> It is a bug - a side effect of the Lifecycle clean-up in Tomcat 7. BTW,
> >> mentioning which version you are using would be a big help.
> >>
> >> Mark
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> >> For additional commands, e-mail: users-help@tomcat.apache.org
> >>
> >>
> >
> >
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


-- 
Ivan

Re: destory method is called twice while the child is destoryed directly

Posted by Mark Thomas <ma...@apache.org>.
On 28/10/2010 02:20, Ivan wrote:
> Thanks for clarifying it, so do the devs have plan for it ?

Yes. What? Fix it. When? TBD.

Creating a bugzilla entry will ensure it doesn't get forgotten.

I see you still haven't told us which version you are using. I assume
you've tested 7.0.4.

Mark

> Hope it could be fixed soon.
> 
> 2010/10/27 Mark Thomas <ma...@apache.org>
> 
>> On 27/10/2010 06:43, Ivan wrote:
>>> Hi,
>>>     While calling the method destory() on the StandardContext directly,
>> it
>>> seems that the method destoryInternal() is called twice in the
>>> LifecycleMBeanBase, the two stacktraces are below :
>>>     a.  LifecycleMBeanBase.unregister(ObjectName) line: 191
>>>          LifecycleMBeanBase.destroyInternal() line: 73
>>>          ContainerBase.destroyInternal() line: 1109
>>>          StandardContext.destroyInternal() line: 5114
>>>          LifecycleBase.destroy() line: 271
>>>          ContainerBase.removeChild(Container) line: 963
>>>          ContainerBase.destroyInternal() line: 1106
>>>          StandardContext.destroyInternal() line: 5114
>>>          LifecycleBase.destroy() line: 271
>>>          ...
>>>      b. LifecycleMBeanBase.unregister(ObjectName) line: 191
>>>          LifecycleMBeanBase.destroyInternal() line: 73
>>>          ContainerBase.destroyInternal() line: 1109
>>>          StandardContext.destroyInternal() line: 5114
>>>          LifecycleBase.destroy() line: 271
>>>          ...
>>>
>>>      So is it by desgin or some code changes might be needed ? Thanks.
>>
>> It is a bug - a side effect of the Lifecycle clean-up in Tomcat 7. BTW,
>> mentioning which version you are using would be a big help.
>>
>> Mark
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
> 
> 




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: destory method is called twice while the child is destoryed directly

Posted by Ivan <xh...@gmail.com>.
Thanks for clarifying it, so do the devs have plan for it ?
Hope it could be fixed soon.

2010/10/27 Mark Thomas <ma...@apache.org>

> On 27/10/2010 06:43, Ivan wrote:
> > Hi,
> >     While calling the method destory() on the StandardContext directly,
> it
> > seems that the method destoryInternal() is called twice in the
> > LifecycleMBeanBase, the two stacktraces are below :
> >     a.  LifecycleMBeanBase.unregister(ObjectName) line: 191
> >          LifecycleMBeanBase.destroyInternal() line: 73
> >          ContainerBase.destroyInternal() line: 1109
> >          StandardContext.destroyInternal() line: 5114
> >          LifecycleBase.destroy() line: 271
> >          ContainerBase.removeChild(Container) line: 963
> >          ContainerBase.destroyInternal() line: 1106
> >          StandardContext.destroyInternal() line: 5114
> >          LifecycleBase.destroy() line: 271
> >          ...
> >      b. LifecycleMBeanBase.unregister(ObjectName) line: 191
> >          LifecycleMBeanBase.destroyInternal() line: 73
> >          ContainerBase.destroyInternal() line: 1109
> >          StandardContext.destroyInternal() line: 5114
> >          LifecycleBase.destroy() line: 271
> >          ...
> >
> >      So is it by desgin or some code changes might be needed ? Thanks.
>
> It is a bug - a side effect of the Lifecycle clean-up in Tomcat 7. BTW,
> mentioning which version you are using would be a big help.
>
> Mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


-- 
Ivan

Re: destory method is called twice while the child is destoryed directly

Posted by Ivan <xh...@gmail.com>.
Thanks for clarifying it, does the devs have plan for it ? Hope it could be
fixed soon.

2010/10/27 Mark Thomas <ma...@apache.org>

> On 27/10/2010 06:43, Ivan wrote:
> > Hi,
> >     While calling the method destory() on the StandardContext directly,
> it
> > seems that the method destoryInternal() is called twice in the
> > LifecycleMBeanBase, the two stacktraces are below :
> >     a.  LifecycleMBeanBase.unregister(ObjectName) line: 191
> >          LifecycleMBeanBase.destroyInternal() line: 73
> >          ContainerBase.destroyInternal() line: 1109
> >          StandardContext.destroyInternal() line: 5114
> >          LifecycleBase.destroy() line: 271
> >          ContainerBase.removeChild(Container) line: 963
> >          ContainerBase.destroyInternal() line: 1106
> >          StandardContext.destroyInternal() line: 5114
> >          LifecycleBase.destroy() line: 271
> >          ...
> >      b. LifecycleMBeanBase.unregister(ObjectName) line: 191
> >          LifecycleMBeanBase.destroyInternal() line: 73
> >          ContainerBase.destroyInternal() line: 1109
> >          StandardContext.destroyInternal() line: 5114
> >          LifecycleBase.destroy() line: 271
> >          ...
> >
> >      So is it by desgin or some code changes might be needed ? Thanks.
>
> It is a bug - a side effect of the Lifecycle clean-up in Tomcat 7. BTW,
> mentioning which version you are using would be a big help.
>
> Mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


-- 
Ivan

Re: destory method is called twice while the child is destoryed directly

Posted by Mark Thomas <ma...@apache.org>.
On 27/10/2010 06:43, Ivan wrote:
> Hi,
>     While calling the method destory() on the StandardContext directly, it
> seems that the method destoryInternal() is called twice in the
> LifecycleMBeanBase, the two stacktraces are below :
>     a.  LifecycleMBeanBase.unregister(ObjectName) line: 191
>          LifecycleMBeanBase.destroyInternal() line: 73
>          ContainerBase.destroyInternal() line: 1109
>          StandardContext.destroyInternal() line: 5114
>          LifecycleBase.destroy() line: 271
>          ContainerBase.removeChild(Container) line: 963
>          ContainerBase.destroyInternal() line: 1106
>          StandardContext.destroyInternal() line: 5114
>          LifecycleBase.destroy() line: 271
>          ...
>      b. LifecycleMBeanBase.unregister(ObjectName) line: 191
>          LifecycleMBeanBase.destroyInternal() line: 73
>          ContainerBase.destroyInternal() line: 1109
>          StandardContext.destroyInternal() line: 5114
>          LifecycleBase.destroy() line: 271
>          ...
> 
>      So is it by desgin or some code changes might be needed ? Thanks.

It is a bug - a side effect of the Lifecycle clean-up in Tomcat 7. BTW,
mentioning which version you are using would be a big help.

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org