查找引用允许在datomic db.fn / cas中使用旧值

时间:2018-01-17 09:29:19

标签: datomic

我尝试使用下面的db.fn / cas事务,其中包含旧值和新值的查找引用:

 [[:db.fn/cas id :task/state [:task-state/name "locked"] [:task-state/name "pending"]]

然而它失败了:

{:e 17592186045792, :a :task/state, :v-old [:task-state/name "locked"], :v 17592186045558, :db/error :db.error/cas-failed}

(我确认两个查找引用都存在)

这是否意味着旧值不允许使用查找引用? 还是我错过了一些Point?

1 个答案:

答案 0 :(得分:0)

使用:db.fn/cas时不允许使用查找引用旧值,但您可以轻松地创建支持查找引用的自定义tx函数