Date: Thursday, March 23, 2006 @ 17:18:23
Author: gilles
Path: /cvsroot/carob/carob/src
Modified: Connection.cpp (1.73 -> 1.74)
Added missing transparent failover (reconnection macros) in setAutoCommit
----------------+
Connection.cpp | 21 +++++++++++----------
1 files changed, 11 insertions(+), 10 deletions(-)
Index: carob/src/Connection.cpp
diff -u carob/src/Connection.cpp:1.73 carob/src/Connection.cpp:1.74
--- carob/src/Connection.cpp:1.73 Mon Mar 6 13:43:23 2006
+++ carob/src/Connection.cpp Thu Mar 23 17:18:23 2006
@@ -417,16 +417,17 @@
// autocommit false -> true
if (autoCommitPrm)
{
- //TODO: Should we try/catch ?
- if (isDebugEnabled())
- logDebug(fctName, L"Setting connection in autocommit mode");
- sendCommand(*driverSocketPtr, SetAutoCommit);
- bool ack = false;
- ack = receiveBoolOrException();
- writeExecutedInTransaction = false;
- transactionId = 0;
- autoCommit = true;
- return;
+ FO_TRY_NTIMES(RECONNECT_RETRIES)
+ if (isDebugEnabled())
+ logDebug(fctName, L"Setting connection in autocommit mode");
+ sendCommand(*driverSocketPtr, SetAutoCommit);
+ bool ack = false;
+ ack = receiveBoolOrException();
+ writeExecutedInTransaction = false;
+ transactionId = 0;
+ autoCommit = true;
+ return;
+ FO_CATCH_NTIMES
}
else // autocommit true -> false
{
_______________________________________________
Carob-commits mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob-commits