[
https://jira.jboss.org/jira/browse/JBMESSAGING-999?page=com.atlassian.jir...
]
Howard Gao commented on JBMESSAGING-999:
----------------------------------------
Proposed Fix:
1. In BridgeService we only do properties validation.
2. In Bridge, we add a BridgeState object, which has BRIDGE_STARTUP, BRIDGE_OK,
BRIDGE_FACT_FAILURE, BRIDGE_DEST_FAILURE, BRIDGE_STOP.
3. In Bridge.start()
3.0 Set bridge state to BRIDGE_STARTUP;
3.1 Start a validating thread.
3.3 start working thread.
3.3 both threads will watch on a BridgeState object
if state is BRIDGE_STARTUP, the validating thread starts to work, checking factories
connections, destinations etc. If everything ok, set state to BRIDGE_OK. Then waiting.
if state is BRIDEG_OK, the working thread works. it will do normal work as is implemented
so far. During work, any failure will set the state to a failure state and will then block
the working thread and make the validating thread wake up and work.
The validating thread will check and retry things based on the specific state. If failed,
set the state to BRIDGE_STOP, thus making the service stop. If retry OK, then let the
working thread continue the bridging job.
Bridge startup should retry if remote destinations are not available
--------------------------------------------------------------------
Key: JBMESSAGING-999
URL:
https://jira.jboss.org/jira/browse/JBMESSAGING-999
Project: JBoss Messaging
Issue Type: Task
Affects Versions: 1.4.0.GA
Reporter: Tim Fox
Assignee: Howard Gao
Priority: Minor
Fix For: 1.4.0.SP3.CP05, 1.4.2.GA
Currently the bridge only retries connection creation after startup.
If remote provider is not available at startup it will fail to start.
We should change this by institutiing a retry at startup too.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira