Когда я делаю вызов API, я хочу обновить 2 отдельные коллекции с MongoDB. Официальный способ это будет использовать транзакции, но поскольку это пока прототип, я буду использовать 2 отдельных вызова функций для обновления каждой коллекции.
Вот что я делаю:
async.waterfall([
function(callback) {
callback(null);
}, function(callback) {
connectToDatabase(MONGODB_URI)
.then(db => updateDocument1(arguments))
.then(result => {
callback(null);
});
}
, function(callback) {
connectToDatabase(MONGODB_URI)
.then(db => updateDocument2(arguments))
.then(result => {
callback(null);
});
, function(err, result) {
callback(null, null)
}
])
Но почему-то не выполняется updateDocument2. Кроме того, updateDocument1 останавливается в середине процесса, поэтому ни один из документов не обновляется.
Ты знаешь почему? А кто-нибудь знает лучший способ?