我想通過我的async.parallel()使用託管的交易跟蹤交易。與async.parallel並列交易
現在,我這樣做:
return sequelize.transaction(function (t) {
return async.parallel([
function(callback){ return func1(t, callback); },
function(callback){ return func2(t, callback); }
], function(err){
if(err){
...
}
});
}).then(function(){
...
}).catch(function(err){
...
});
如果func1
或func2
在另一個之前發生故障,事務回滾。那麼接下來的兩個函數將嘗試使用該交易,但後來我得到這個錯誤:
Error: rollback has been called on this transaction(8b7f7cbc-b617-44fb-a9dd-906397e6f7ca), you can no longer use it.
這是有道理的。
將sequelize事務和async.parallel一起使用的推薦方法是什麼?