[
https://issues.jboss.org/browse/AS7-1899?page=com.atlassian.jira.plugin.s...
]
Andy Taylor commented on AS7-1899:
----------------------------------
This is because the JMSQueueService (and other destination/cf services) delete the queue
on shutdown via the stop(...) method. This means when the message journal is reloaded,
which happens before the queue is redeployed by the AS, the messages are discarded.
HornetQ deletes all JMS messages after shutdown
-----------------------------------------------
Key: AS7-1899
URL:
https://issues.jboss.org/browse/AS7-1899
Project: Application Server 7
Issue Type: Bug
Components: JMS
Affects Versions: 7.0.1.Final
Reporter: Fabrizio Benedetti
Assignee: Andy Taylor
Fix For: 7.1.0.Beta1
After sending a persistent JMS message to a queue, and the message is not consumed, after
reboot the message is deleted. Also, after the reboot, jboss reset persistence-enabled to
false in standalone.xml, or sometimes the entire element is deleted.
Following messaging subsystem configuration:
{code:xml}
<subsystem xmlns="urn:jboss:domain:messaging:1.0">
<journal-file-size>102400</journal-file-size>
<journal-min-files>2</journal-min-files>
<journal-type>NIO</journal-type>
<persistence-enabled>true</persistence-enabled>
<acceptors>
<netty-acceptor name="netty"
socket-binding="messaging"/>
<netty-acceptor name="netty-throughput"
socket-binding="messaging-throughput">
<param key="batch-delay" value="50"/>
<param key="direct-deliver" value="false"/>
</netty-acceptor>
<in-vm-acceptor name="in-vm" server-id="0"/>
</acceptors>
<address-settings>
<address-setting match="#">
<dead-letter-address>
jms.queue.DLQ
</dead-letter-address>
<expiry-address>
jms.queue.ExpiryQueue
</expiry-address>
<redelivery-delay>
0
</redelivery-delay>
<max-size-bytes>
10485760
</max-size-bytes>
<message-counter-history-day-limit>
10
</message-counter-history-day-limit>
<address-full-policy>
BLOCK
</address-full-policy>
</address-setting>
</address-settings>
<connectors>
<netty-connector name="netty"
socket-binding="messaging"/>
<netty-connector name="netty-throughput"
socket-binding="messaging-throughput">
<param key="batch-delay" value="50"/>
</netty-connector>
<in-vm-connector name="in-vm" server-id="0"/>
</connectors>
<security-settings>
<security-setting match="#">
<permission type="send" roles="guest"/>
<permission type="consume" roles="guest"/>
<permission type="createNonDurableQueue"
roles="guest"/>
<permission type="deleteNonDurableQueue"
roles="guest"/>
</security-setting>
</security-settings>
<jms-connection-factories>
<connection-factory name="InVmConnectionFactory">
<connectors>
<connector-ref connector-name="in-vm"/>
</connectors>
<entries>
<entry name="java:/ConnectionFactory"/>
</entries>
</connection-factory>
<connection-factory name="RemoteConnectionFactory">
<connectors>
<connector-ref connector-name="netty"/>
</connectors>
<entries>
<entry name="RemoteConnectionFactory"/>
</entries>
</connection-factory>
<pooled-connection-factory name="hornetq-ra">
<connectors>
<connector-ref connector-name="in-vm"/>
</connectors>
<entries>
<entry name="java:/JmsXA"/>
</entries>
<transaction mode="xa"/>
</pooled-connection-factory>
</jms-connection-factories>
<jms-destinations>
<jms-queue name="MyQueue">
<entry name="queue/MyQueue"/>
</jms-queue>
</jms-destinations>
</subsystem>
{code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira