You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Jason Dillon <ja...@planet57.com> on 2006/09/13 03:28:38 UTC

ActiveMQ CNFE on CTRL-C

I'm not sure if this was the same error that was reported before...  
but I am seeing a CNFE when shutting down jetty j2ee (`java -jar bin/ 
sever.jar --long`) with CTRL-C:

<snip>
java.lang.NoClassDefFoundError: org/apache/activemq/broker/ 
BrokerService$2$1
         at org.apache.activemq.broker.BrokerService$2.stop 
(BrokerService.java:1137)
         at org.apache.activemq.util.ServiceStopper.stop 
(ServiceStopper.java:42)
         at org.apache.activemq.broker.BrokerService.stop 
(BrokerService.java:442)
         at org.apache.activemq.broker.BrokerService.containerShutdown 
(BrokerService.java:1311)
         at org.apache.activemq.broker.BrokerService$3.run 
(BrokerService.java:1288)
</snip>

This does not show up when using the shutdown command, or at least I  
can't see it on the console when I use shutdown.sh, but it does show  
up w/CTRL-C.

Is the shutdown hook, not using the right classloader or something?

--jason

Re: ActiveMQ CNFE on CTRL-C

Posted by Hiram Chirino <hi...@hiramchirino.com>.
BTW.. you can.

The ActiveMQ GB now supports a brokerURI attribute that you can set it
to either an external spring or xbean file for the broker
configuration.  For example:
xbean:file:/path/to/activemq.xml
or
spring:file:/path/to/applicationContext.xml

Regards,
Hiram

On 9/13/06, Jason Dillon <ja...@planet57.com> wrote:
> I will try adding a new attribute and updating the plan to set it...
>
> GBeans are so tedious, I wish I just had a spring XML to configure
> this bean... :-(
>
> --jason
>
>
> On Sep 13, 2006, at 8:32 AM, Aaron Mulder wrote:
>
> > As I said, for the current version of ActiveMQ, the property can be
> > set directly on the broker, instead of using a system property.  I
> > assume we'll be able to ditch the system property GBean and just
> > configure the broker GBean accordingly.
> >
> > Thanks,
> >     Aaron
> >
> > On 9/13/06, Kevan Miller <ke...@gmail.com> wrote:
> >>
> >> On Sep 13, 2006, at 7:37 AM, Aaron Mulder wrote:
> >>
> >> > We shouldn't use the ActiveMQ shutdown hook -- we'll shut it down
> >> > gracefully during the Geronimo kernel shutdown process.  In a
> >> normal
> >> > ActiveMQ config file you disable it with something like this:
> >> >
> >> > <broker useShutdownHook="false" ...>
> >> >
> >> > I haven't looked at our current ActiveMQ integration syntax but I
> >> > assume we can set that same property on the broker object/GBean.
> >>
> >> Right. The real issue is why the ActiveMQ shutdown hook is running. I
> >> think the CNFE is occurring because the module has been stopped and
> >> MultiParentClassLoader.destroy() has been called (thus no more
> >> classes will be loaded...).
> >>
> >> For G 1.0 and 1.1 we disabled the ActiveMQ shutdown hook with the
> >> following in configs/activemq-broker/src/plan/plan.xml
> >>
> >>      <gbean name="SystemProperties"
> >> class="org.apache.geronimo.system.properties.SystemProperties">
> >>          <attribute name="systemProperties">
> >>              activemq.broker.disable-clean-shutdown=true
> >>          </attribute>
> >>      </gbean>
> >>
> >> I see we're still setting the system property in the active mq plan.
> >> So, either ActiveMQ 4 uses a different system property or there's a
> >> different problem.
> >>
> >> On the different problem track: a while back, we had a dependency
> >> issue which allowed ActiveMQ to start before the SystemProperties
> >> GBean had been started -- so, ActiveMQ wasn't seeing the above system
> >> property. See http://issues.apache.org/jira/browse/GERONIMO-1818
> >>
> >> --kevan
> >>
> >> >
> >> > Thanks,
> >> >      Aaron
> >> >
> >> > On 9/12/06, Jason Dillon <ja...@planet57.com> wrote:
> >> >> I'm not sure if this was the same error that was reported
> >> before...
> >> >> but I am seeing a CNFE when shutting down jetty j2ee (`java -
> >> jar bin/
> >> >> sever.jar --long`) with CTRL-C:
> >> >>
> >> >> <snip>
> >> >> java.lang.NoClassDefFoundError: org/apache/activemq/broker/
> >> >> BrokerService$2$1
> >> >>          at org.apache.activemq.broker.BrokerService$2.stop
> >> >> (BrokerService.java:1137)
> >> >>          at org.apache.activemq.util.ServiceStopper.stop
> >> >> (ServiceStopper.java:42)
> >> >>          at org.apache.activemq.broker.BrokerService.stop
> >> >> (BrokerService.java:442)
> >> >>          at
> >> >> org.apache.activemq.broker.BrokerService.containerShutdown
> >> >> (BrokerService.java:1311)
> >> >>          at org.apache.activemq.broker.BrokerService$3.run
> >> >> (BrokerService.java:1288)
> >> >> </snip>
> >> >>
> >> >> This does not show up when using the shutdown command, or at
> >> least I
> >> >> can't see it on the console when I use shutdown.sh, but it does
> >> show
> >> >> up w/CTRL-C.
> >> >>
> >> >> Is the shutdown hook, not using the right classloader or
> >> something?
> >> >>
> >> >> --jason
> >> >>
> >>
> >>
>
>


-- 
Regards,
Hiram

Blog: http://hiramchirino.com

Re: ActiveMQ CNFE on CTRL-C

Posted by Jason Dillon <ja...@planet57.com>.
I will try adding a new attribute and updating the plan to set it...

GBeans are so tedious, I wish I just had a spring XML to configure  
this bean... :-(

--jason


On Sep 13, 2006, at 8:32 AM, Aaron Mulder wrote:

> As I said, for the current version of ActiveMQ, the property can be
> set directly on the broker, instead of using a system property.  I
> assume we'll be able to ditch the system property GBean and just
> configure the broker GBean accordingly.
>
> Thanks,
>     Aaron
>
> On 9/13/06, Kevan Miller <ke...@gmail.com> wrote:
>>
>> On Sep 13, 2006, at 7:37 AM, Aaron Mulder wrote:
>>
>> > We shouldn't use the ActiveMQ shutdown hook -- we'll shut it down
>> > gracefully during the Geronimo kernel shutdown process.  In a  
>> normal
>> > ActiveMQ config file you disable it with something like this:
>> >
>> > <broker useShutdownHook="false" ...>
>> >
>> > I haven't looked at our current ActiveMQ integration syntax but I
>> > assume we can set that same property on the broker object/GBean.
>>
>> Right. The real issue is why the ActiveMQ shutdown hook is running. I
>> think the CNFE is occurring because the module has been stopped and
>> MultiParentClassLoader.destroy() has been called (thus no more
>> classes will be loaded...).
>>
>> For G 1.0 and 1.1 we disabled the ActiveMQ shutdown hook with the
>> following in configs/activemq-broker/src/plan/plan.xml
>>
>>      <gbean name="SystemProperties"
>> class="org.apache.geronimo.system.properties.SystemProperties">
>>          <attribute name="systemProperties">
>>              activemq.broker.disable-clean-shutdown=true
>>          </attribute>
>>      </gbean>
>>
>> I see we're still setting the system property in the active mq plan.
>> So, either ActiveMQ 4 uses a different system property or there's a
>> different problem.
>>
>> On the different problem track: a while back, we had a dependency
>> issue which allowed ActiveMQ to start before the SystemProperties
>> GBean had been started -- so, ActiveMQ wasn't seeing the above system
>> property. See http://issues.apache.org/jira/browse/GERONIMO-1818
>>
>> --kevan
>>
>> >
>> > Thanks,
>> >      Aaron
>> >
>> > On 9/12/06, Jason Dillon <ja...@planet57.com> wrote:
>> >> I'm not sure if this was the same error that was reported  
>> before...
>> >> but I am seeing a CNFE when shutting down jetty j2ee (`java - 
>> jar bin/
>> >> sever.jar --long`) with CTRL-C:
>> >>
>> >> <snip>
>> >> java.lang.NoClassDefFoundError: org/apache/activemq/broker/
>> >> BrokerService$2$1
>> >>          at org.apache.activemq.broker.BrokerService$2.stop
>> >> (BrokerService.java:1137)
>> >>          at org.apache.activemq.util.ServiceStopper.stop
>> >> (ServiceStopper.java:42)
>> >>          at org.apache.activemq.broker.BrokerService.stop
>> >> (BrokerService.java:442)
>> >>          at
>> >> org.apache.activemq.broker.BrokerService.containerShutdown
>> >> (BrokerService.java:1311)
>> >>          at org.apache.activemq.broker.BrokerService$3.run
>> >> (BrokerService.java:1288)
>> >> </snip>
>> >>
>> >> This does not show up when using the shutdown command, or at  
>> least I
>> >> can't see it on the console when I use shutdown.sh, but it does  
>> show
>> >> up w/CTRL-C.
>> >>
>> >> Is the shutdown hook, not using the right classloader or  
>> something?
>> >>
>> >> --jason
>> >>
>>
>>


Re: ActiveMQ CNFE on CTRL-C

Posted by Jason Dillon <ja...@planet57.com>.
This should be fixed now.  Thanks Aaron for point out the  
useShutdownHook flag.

--jason


On Sep 13, 2006, at 8:32 AM, Aaron Mulder wrote:

> As I said, for the current version of ActiveMQ, the property can be
> set directly on the broker, instead of using a system property.  I
> assume we'll be able to ditch the system property GBean and just
> configure the broker GBean accordingly.
>
> Thanks,
>     Aaron
>
> On 9/13/06, Kevan Miller <ke...@gmail.com> wrote:
>>
>> On Sep 13, 2006, at 7:37 AM, Aaron Mulder wrote:
>>
>> > We shouldn't use the ActiveMQ shutdown hook -- we'll shut it down
>> > gracefully during the Geronimo kernel shutdown process.  In a  
>> normal
>> > ActiveMQ config file you disable it with something like this:
>> >
>> > <broker useShutdownHook="false" ...>
>> >
>> > I haven't looked at our current ActiveMQ integration syntax but I
>> > assume we can set that same property on the broker object/GBean.
>>
>> Right. The real issue is why the ActiveMQ shutdown hook is running. I
>> think the CNFE is occurring because the module has been stopped and
>> MultiParentClassLoader.destroy() has been called (thus no more
>> classes will be loaded...).
>>
>> For G 1.0 and 1.1 we disabled the ActiveMQ shutdown hook with the
>> following in configs/activemq-broker/src/plan/plan.xml
>>
>>      <gbean name="SystemProperties"
>> class="org.apache.geronimo.system.properties.SystemProperties">
>>          <attribute name="systemProperties">
>>              activemq.broker.disable-clean-shutdown=true
>>          </attribute>
>>      </gbean>
>>
>> I see we're still setting the system property in the active mq plan.
>> So, either ActiveMQ 4 uses a different system property or there's a
>> different problem.
>>
>> On the different problem track: a while back, we had a dependency
>> issue which allowed ActiveMQ to start before the SystemProperties
>> GBean had been started -- so, ActiveMQ wasn't seeing the above system
>> property. See http://issues.apache.org/jira/browse/GERONIMO-1818
>>
>> --kevan
>>
>> >
>> > Thanks,
>> >      Aaron
>> >
>> > On 9/12/06, Jason Dillon <ja...@planet57.com> wrote:
>> >> I'm not sure if this was the same error that was reported  
>> before...
>> >> but I am seeing a CNFE when shutting down jetty j2ee (`java - 
>> jar bin/
>> >> sever.jar --long`) with CTRL-C:
>> >>
>> >> <snip>
>> >> java.lang.NoClassDefFoundError: org/apache/activemq/broker/
>> >> BrokerService$2$1
>> >>          at org.apache.activemq.broker.BrokerService$2.stop
>> >> (BrokerService.java:1137)
>> >>          at org.apache.activemq.util.ServiceStopper.stop
>> >> (ServiceStopper.java:42)
>> >>          at org.apache.activemq.broker.BrokerService.stop
>> >> (BrokerService.java:442)
>> >>          at
>> >> org.apache.activemq.broker.BrokerService.containerShutdown
>> >> (BrokerService.java:1311)
>> >>          at org.apache.activemq.broker.BrokerService$3.run
>> >> (BrokerService.java:1288)
>> >> </snip>
>> >>
>> >> This does not show up when using the shutdown command, or at  
>> least I
>> >> can't see it on the console when I use shutdown.sh, but it does  
>> show
>> >> up w/CTRL-C.
>> >>
>> >> Is the shutdown hook, not using the right classloader or  
>> something?
>> >>
>> >> --jason
>> >>
>>
>>


Re: ActiveMQ CNFE on CTRL-C

Posted by Kevan Miller <ke...@gmail.com>.
On Sep 13, 2006, at 11:32 AM, Aaron Mulder wrote:

> As I said, for the current version of ActiveMQ, the property can be
> set directly on the broker, instead of using a system property.  I
> assume we'll be able to ditch the system property GBean and just
> configure the broker GBean accordingly.

Ah, sorry, I misread... I haven't worked with the current version,  
but sounds right.

--kevan

Re: ActiveMQ CNFE on CTRL-C

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
As I said, for the current version of ActiveMQ, the property can be
set directly on the broker, instead of using a system property.  I
assume we'll be able to ditch the system property GBean and just
configure the broker GBean accordingly.

Thanks,
     Aaron

On 9/13/06, Kevan Miller <ke...@gmail.com> wrote:
>
> On Sep 13, 2006, at 7:37 AM, Aaron Mulder wrote:
>
> > We shouldn't use the ActiveMQ shutdown hook -- we'll shut it down
> > gracefully during the Geronimo kernel shutdown process.  In a normal
> > ActiveMQ config file you disable it with something like this:
> >
> > <broker useShutdownHook="false" ...>
> >
> > I haven't looked at our current ActiveMQ integration syntax but I
> > assume we can set that same property on the broker object/GBean.
>
> Right. The real issue is why the ActiveMQ shutdown hook is running. I
> think the CNFE is occurring because the module has been stopped and
> MultiParentClassLoader.destroy() has been called (thus no more
> classes will be loaded...).
>
> For G 1.0 and 1.1 we disabled the ActiveMQ shutdown hook with the
> following in configs/activemq-broker/src/plan/plan.xml
>
>      <gbean name="SystemProperties"
> class="org.apache.geronimo.system.properties.SystemProperties">
>          <attribute name="systemProperties">
>              activemq.broker.disable-clean-shutdown=true
>          </attribute>
>      </gbean>
>
> I see we're still setting the system property in the active mq plan.
> So, either ActiveMQ 4 uses a different system property or there's a
> different problem.
>
> On the different problem track: a while back, we had a dependency
> issue which allowed ActiveMQ to start before the SystemProperties
> GBean had been started -- so, ActiveMQ wasn't seeing the above system
> property. See http://issues.apache.org/jira/browse/GERONIMO-1818
>
> --kevan
>
> >
> > Thanks,
> >      Aaron
> >
> > On 9/12/06, Jason Dillon <ja...@planet57.com> wrote:
> >> I'm not sure if this was the same error that was reported before...
> >> but I am seeing a CNFE when shutting down jetty j2ee (`java -jar bin/
> >> sever.jar --long`) with CTRL-C:
> >>
> >> <snip>
> >> java.lang.NoClassDefFoundError: org/apache/activemq/broker/
> >> BrokerService$2$1
> >>          at org.apache.activemq.broker.BrokerService$2.stop
> >> (BrokerService.java:1137)
> >>          at org.apache.activemq.util.ServiceStopper.stop
> >> (ServiceStopper.java:42)
> >>          at org.apache.activemq.broker.BrokerService.stop
> >> (BrokerService.java:442)
> >>          at
> >> org.apache.activemq.broker.BrokerService.containerShutdown
> >> (BrokerService.java:1311)
> >>          at org.apache.activemq.broker.BrokerService$3.run
> >> (BrokerService.java:1288)
> >> </snip>
> >>
> >> This does not show up when using the shutdown command, or at least I
> >> can't see it on the console when I use shutdown.sh, but it does show
> >> up w/CTRL-C.
> >>
> >> Is the shutdown hook, not using the right classloader or something?
> >>
> >> --jason
> >>
>
>

Re: ActiveMQ CNFE on CTRL-C

Posted by Kevan Miller <ke...@gmail.com>.
On Sep 13, 2006, at 7:37 AM, Aaron Mulder wrote:

> We shouldn't use the ActiveMQ shutdown hook -- we'll shut it down
> gracefully during the Geronimo kernel shutdown process.  In a normal
> ActiveMQ config file you disable it with something like this:
>
> <broker useShutdownHook="false" ...>
>
> I haven't looked at our current ActiveMQ integration syntax but I
> assume we can set that same property on the broker object/GBean.

Right. The real issue is why the ActiveMQ shutdown hook is running. I  
think the CNFE is occurring because the module has been stopped and  
MultiParentClassLoader.destroy() has been called (thus no more  
classes will be loaded...).

For G 1.0 and 1.1 we disabled the ActiveMQ shutdown hook with the  
following in configs/activemq-broker/src/plan/plan.xml

     <gbean name="SystemProperties"  
class="org.apache.geronimo.system.properties.SystemProperties">
         <attribute name="systemProperties">
             activemq.broker.disable-clean-shutdown=true
         </attribute>
     </gbean>

I see we're still setting the system property in the active mq plan.  
So, either ActiveMQ 4 uses a different system property or there's a  
different problem.

On the different problem track: a while back, we had a dependency  
issue which allowed ActiveMQ to start before the SystemProperties  
GBean had been started -- so, ActiveMQ wasn't seeing the above system  
property. See http://issues.apache.org/jira/browse/GERONIMO-1818

--kevan

>
> Thanks,
>      Aaron
>
> On 9/12/06, Jason Dillon <ja...@planet57.com> wrote:
>> I'm not sure if this was the same error that was reported before...
>> but I am seeing a CNFE when shutting down jetty j2ee (`java -jar bin/
>> sever.jar --long`) with CTRL-C:
>>
>> <snip>
>> java.lang.NoClassDefFoundError: org/apache/activemq/broker/
>> BrokerService$2$1
>>          at org.apache.activemq.broker.BrokerService$2.stop
>> (BrokerService.java:1137)
>>          at org.apache.activemq.util.ServiceStopper.stop
>> (ServiceStopper.java:42)
>>          at org.apache.activemq.broker.BrokerService.stop
>> (BrokerService.java:442)
>>          at  
>> org.apache.activemq.broker.BrokerService.containerShutdown
>> (BrokerService.java:1311)
>>          at org.apache.activemq.broker.BrokerService$3.run
>> (BrokerService.java:1288)
>> </snip>
>>
>> This does not show up when using the shutdown command, or at least I
>> can't see it on the console when I use shutdown.sh, but it does show
>> up w/CTRL-C.
>>
>> Is the shutdown hook, not using the right classloader or something?
>>
>> --jason
>>


Re: ActiveMQ CNFE on CTRL-C

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
We shouldn't use the ActiveMQ shutdown hook -- we'll shut it down
gracefully during the Geronimo kernel shutdown process.  In a normal
ActiveMQ config file you disable it with something like this:

<broker useShutdownHook="false" ...>

I haven't looked at our current ActiveMQ integration syntax but I
assume we can set that same property on the broker object/GBean.

Thanks,
      Aaron

On 9/12/06, Jason Dillon <ja...@planet57.com> wrote:
> I'm not sure if this was the same error that was reported before...
> but I am seeing a CNFE when shutting down jetty j2ee (`java -jar bin/
> sever.jar --long`) with CTRL-C:
>
> <snip>
> java.lang.NoClassDefFoundError: org/apache/activemq/broker/
> BrokerService$2$1
>          at org.apache.activemq.broker.BrokerService$2.stop
> (BrokerService.java:1137)
>          at org.apache.activemq.util.ServiceStopper.stop
> (ServiceStopper.java:42)
>          at org.apache.activemq.broker.BrokerService.stop
> (BrokerService.java:442)
>          at org.apache.activemq.broker.BrokerService.containerShutdown
> (BrokerService.java:1311)
>          at org.apache.activemq.broker.BrokerService$3.run
> (BrokerService.java:1288)
> </snip>
>
> This does not show up when using the shutdown command, or at least I
> can't see it on the console when I use shutdown.sh, but it does show
> up w/CTRL-C.
>
> Is the shutdown hook, not using the right classloader or something?
>
> --jason
>