Undetected recovery log failure causes a major problem in replication
---------------------------------------------------------------------

         Key: SEQUOIA-910
         URL: https://forge.continuent.org/jira/browse/SEQUOIA-910
     Project: Sequoia
        Type: Bug
  Components: Core  
    Versions: Sequoia 3.0    
    Reporter: Guillaume Smet


This is a followup of the thread 
https://forge.continuent.org/pipermail/sequoia/2007-February/004683.html on 
sequoia list.

In RecoveryLog.getDatabaseConnection(), Sequoia catches RuntimeException and 
SQLException but not others. In the case of RuntimeException and SQLException, 
a problem to establish the connection is correctly handled (inserts in the 
recovery log are postponed) but not in the case of a ConnectException for 
instance.

In the case reported by Gérard Bunel, the MySQL server hosting the recovery log 
is shutdown and it throws a java.net.ConnectException. Write queries are not 
logged in this recovery log and the failure of the recovery log is not detected 
by Sequoia. This leads to a synchronisation problem when restarting the 
recovery log and enabling the backend as the recovery logs of both controllers 
are not identical.

IMHO we should catch every Exception instead of just SQLException in the last 
catch of getDatabaseConnection().

Thoughts?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   https://forge.continuent.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to