可串行化和原子化交易RethinkDB

时间:2017-07-19 16:19:09

标签: serialization transactions atomic rethinkdb

我想知道以这种方式执行更新是否可以保证我的ATOMIC和SERIALIZABLE交易。

  

我需要在执行更新之前在表Y中插入一些数据   在表X中,在我发布之前,没有人不能在表X中做任何事情   它

r.table('TableX', { readMode: 'majority' }).get(IdUser).update(function () {
    r.table('TableY').insert({
        SomeData: 'Some data will be inserted in Table Y',
        SomeData2: 'Some data 2 will be inserted in Table Y',
    }).run(conn, (err, results) => {
        console.log(results)
    })
    return { SomeData3: 'Some Data will be updated in TableX' }
}, { nonAtomic: false }).run(conn, function (err, result) {
    if (!err && result.replaced > 0)
        resolve('OK');
    else
        reject(new Error(err));
})

0 个答案:

没有答案