/// <summary> /// Used when a connection is closed /// </summary> public void Prepare() { Log.Debug("Prepare"); if (_inTransaction) { // may not be null if Promote or Enlist is called first if (_callbacks == null) { _callbacks = new NpgsqlTransactionCallbacks(_connection); } _callbacks.PrepareTransaction(); if (_npgsqlTx != null) { // cancel the NpgsqlTransaction since this will // be handled by a two phase commit. _connection.Connector.ClearTransaction(); _npgsqlTx.Dispose(); _npgsqlTx = null; _connection.PromotableLocalTransactionEnded(); } } }
/// <summary> /// Used when a connection is closed /// </summary> public void Prepare() { NpgsqlEventLog.LogMethodEnter(LogLevel.Debug, CLASSNAME, "Prepare"); if (_inTransaction) { // may not be null if Promote or Enlist is called first if (_callbacks == null) { _callbacks = new NpgsqlTransactionCallbacks(_connection); } _callbacks.PrepareTransaction(); if (_npgsqlTx != null) { // cancel the NpgsqlTransaction since this will // be handled by a two phase commit. _npgsqlTx.Cancel(); _npgsqlTx.Dispose(); _npgsqlTx = null; _connection.PromotableLocalTransactionEnded(); } } }