activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wilson Freitas (JIRA)" <j...@apache.org>
Subject [jira] Created: (AMQ-2038) Broker parameter systemExitOnShutdown="true" not being honored when persistence adapter file system is unavailable
Date Thu, 18 Dec 2008 15:16:05 GMT
Broker parameter systemExitOnShutdown="true" not being honored when persistence adapter file
system is unavailable
------------------------------------------------------------------------------------------------------------------

                 Key: AMQ-2038
                 URL: https://issues.apache.org/activemq/browse/AMQ-2038
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.0.0
         Environment: Windows XP x86
            Reporter: Wilson Freitas


The broker parameter systemExitOnShutdown="true" is not being honored when persistence adapter
file system is unavailable. 

To reproduce the problem:

 - Use journaling persistence pointing to an USB drive diretory. 

 - Make sure the broker is configured with systemExitOnShutdown="true":
  <amq:broker id="broker" depends-on="jmxServer" useShutdownHook="false" systemExitOnShutdown="true">
...

 - After the broker is running send some messages to a queue.

 - Unplug the USB drive.

 - Try to send more messages. The broker will reject the messages and report the following
exception:

javax.jms.JMSException: The volume for a file has been externally altered so that the opened
file is no longer valid
        at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
        at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1203)
        at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1648)
        at org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:227)
        at org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:241)
        at org.apache.servicemix.jms.multiplexing.MultiplexingProviderProcessor.process(MultiplexingProviderProcessor.java:114)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:540)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:492)
        at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:621)
        at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
        at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
        at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.io.IOException: The volume for a file has been externally altered so that
the opened file is no longer valid
        at sun.nio.ch.FileChannelImpl.force0(Native Method)
        at sun.nio.ch.FileChannelImpl.force(FileChannelImpl.java:359)
        at org.apache.activeio.journal.active.LogFile.force(LogFile.java:102)
        at org.apache.activeio.journal.active.LogFileManager.append(LogFileManager.java:308)
        at org.apache.activeio.journal.active.JournalImpl.queuedWrite(JournalImpl.java:256)
        at org.apache.activeio.journal.active.JournalImpl.access$000(JournalImpl.java:62)
        at org.apache.activeio.journal.active.JournalImpl$2.run(JournalImpl.java:229)
        at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
        at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
        ... 1 more

This error is not being detected by the broker as a fatal error and the broker is not going
down automatically. The issue was reported by a Servicemix user and it is expected that after
the AMQ broker goes down SMX must goes down too.


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


Mime
View raw message