Hi,
Interestting, this is the first time I hear about a real James with amq
in a failover configuration.
I guess you changed in spring-server.xml the block
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:0" />
</amq:transportConnectors>
Maybe a first test scenario would be to be sure James doesn't use the
queue, failingover amq, and begin to send again mail to james. The error
may be due because the fail over occurs while a transaction is occurring?
Thx, Eric
On 15/01/2013 15:26, Philipp Krenn wrote:
Hi,
We are using James Server with an ActiveMQ master/slave configuration
configured via failover:
failover:(tcp://mq0.xxx:8080,tcp://mq1.xxx:8080)?jms.prefetchPolicy.all=0
When the master stops, we would expect a failover to the slave - this is
working fine with other applications. However, James Server does not switch
queue instance and keeps producing the following exception instead:
[ERROR] - Exception caught in RemoteDelivery.run() [Remote delivery thread (3)]
[j.mailetcontext]
org.apache.james.queue.api.MailQueue$MailQueueException: Unable to dequeue next
message (javax.jms.IllegalStateException: The Session is closed)
at
org.apache.james.queue.jms.JMSMailQueue.deQueue(JMSMailQueue.java:170)
~[james-server-queue-jms-3.0-beta5-20130109.104230-723.jar:3.0-beta5-SNAPSHOT]
at
org.apache.james.transport.mailets.RemoteDelivery.run(RemoteDelivery.java:771)
~[james-server-mailets-3.0-beta5-20130110.114225-802.jar:3.0-beta5-SNAPSHOT]
at java.lang.Thread.run(Thread.java:679) [na:1.6.0_24]
Caused by: javax.jms.IllegalStateException: The Session is closed
at
org.apache.activemq.ActiveMQSession.checkClosed(ActiveMQSession.java:731)
~[activemq-core-5.7.0.jar:5.7.0]
at
org.apache.activemq.ActiveMQSession.createQueue(ActiveMQSession.java:1169)
~[activemq-core-5.7.0.jar:5.7.0]
at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source) ~[na:na]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.6.0_24]
at java.lang.reflect.Method.invoke(Method.java:616) ~[na:1.6.0_24]
at
org.springframework.jms.connection.CachingConnectionFactory$CachedSessionInvocationHandler.invoke(CachingConnectionFactory.java:344)
~[spring-jms-3.1.0.RELEASE.jar:3.1.0.RELEASE]
at $Proxy87.createQueue(Unknown Source) ~[na:na]
at
org.apache.james.queue.jms.JMSMailQueue.deQueue(JMSMailQueue.java:107)
~[james-server-queue-jms-3.0-beta5-20130109.104230-723.jar:3.0-beta5-SNAPSHOT]
... 2 common frames omitted
The James Server keeps running and consumes 100% of the available CPU until it
is manually restarted.
Thanks for looking into this issue.
Cheers,
Philipp
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org