From 4145c1c68923c13538a5b60d1b384037d0dded9d Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 17 Jan 2017 20:38:45 +0100 Subject: Server: transaction refractoring --- server/helpers/database-utils.js | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'server/helpers') diff --git a/server/helpers/database-utils.js b/server/helpers/database-utils.js index 046717517..6fe7e99aa 100644 --- a/server/helpers/database-utils.js +++ b/server/helpers/database-utils.js @@ -6,9 +6,27 @@ const db = require('../initializers/database') const logger = require('./logger') const utils = { + commitTransaction, retryTransactionWrapper, - transactionRetryer, - startSerializableTransaction + rollbackTransaction, + startSerializableTransaction, + transactionRetryer +} + +function commitTransaction (t, callback) { + return t.commit().asCallback(callback) +} + +function rollbackTransaction (err, t, callback) { + // Try to rollback transaction + if (t) { + // Do not catch err, report the original one + t.rollback().asCallback(function () { + return callback(err) + }) + } else { + return callback(err) + } } // { arguments, errorMessage } -- cgit v1.2.3