我的第二个multi()调用需要第一个multi()的结果。但是我希望所有来自multi()的命令都以原子方式执行。我怎么能这样做?
这是使用node.js客户端。
db.multi()
.incr('next:user:id')
.sadd('users:facebookid', facebookId)
.exec(function(err, replies)
{
var newUserId = replies[0];
// if something fails in this multi(), then the previous multi() shouldn't be executed either.
db.multi()
.hmset('user:' + newUserId , 'facebookId', facebookId, 'name', userName)
.incr('users:count')
.exec()
});