如果您将事务放入Abjigitify/DataStore中的事务中会发生什么?执行顺序是什么?如何解决?
例如,
1)如果内部事务失败,外部事务也会失败吗?
2)如果外部交易失败,如果碰巧完成的内部交易会回滚吗?
// Outer Transaction
Thing th = ofy().transact(() -> {
Thing thing = ofy().load().key(thingKey).now();
thing.modify();
ofy().save().entity(thing);
// Inner Transaction
// This transaction could be in another method used in various other places
Thing th2 = ofy().transact(() -> {
Thing thing2 = ofy().load().key(thingKey2).now();
thing2.modify();
Thing thing2 = ofy().load().key(thingKey3).now();
thing3.modify();
ofy().save().entity(thing2);
ofy().save().entity(thing3);
return thing;
});
return thing;
});
这里有大量文档:
https://github.com/objectify/obignify/wiki/wiki/transactions
您想问什么问题?