[
http://jira.jboss.com/jira/browse/JBMESSAGING-1219?page=comments#action_1... ]
Jeff Mesnil commented on JBMESSAGING-1219:
------------------------------------------
According to Microsoft (
http://support.microsoft.com/kb/314053/EN-US/):
KeepAliveTime
Default: 7,200,000 (two hours)
Description: The parameter controls how frequently TCP tries to verify that an idle
connection is still intact by sending a keepalive packet. If the remote computer is still
reachable and functioning, the remote computer acknowledges the keepalive transmission.
*By default, keepalive packets are not sent*. A program can turn on this feature on a
connection.
if this feature is indeed turned off on Windows, this may explain the difference: the
client's pings fail more rapidly and trigger the right code path.
On linux, the pings will wait until the KeepAliveTime is reached and won't trigger any
exception handling
Messages are not redelivered after reconnection of message bridge
-----------------------------------------------------------------
Key: JBMESSAGING-1219
URL:
http://jira.jboss.com/jira/browse/JBMESSAGING-1219
Project: JBoss Messaging
Issue Type: Bug
Components: Messaging Core
Affects Versions: 1.4.0.SP3
Environment: JBoss-EAP-4.2_CP1 , JBM-1.4.0-SP3, RHEL5
Reporter: Tyronne Wickramarathne
Assigned To: Tim Fox
Fix For: Stable branch
Attachments: configuration.zip
JBM Bridge reconnection happens successfully but messages are not delivered to the
destination via the bridge. however this problem doesn't occur on Windows
environment.
modify the attached jms-ds.xml file with your remote machine's IP address, for the
remote provider.
SourceProviderLoader is the remote machine, and our TargetProviderLoader is the local
machine.
deploy the test-bridge-service.xml file on your local machine.
it has two bridges defined :
TestBridgeA remote queue/A -> local queue/C
TestBridgeB remote queue/B -> local queue/D
Add 10 messages to both queue A and queue B on the remote machine (we used a JSP page on
the remote machine to do that) in order to establish everything is working.
Add 20000 (or more) messages to queue A on the remote machine.
wait until some of the messages have been delivered to queue C on the local machine.
disconnect the local machine from the network by pulling the network cable.
wait a couple of minutes.
re-connect the local machine to the network.
after a few seconds the message delivery should start again.
wait for all of the message to be delivered.
now - try sending 500 messages to queue/B on the remote machine
those 500 messages will never be delivered !
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira