有没有办法将数据库重置到特定时间点(主要用于调试)

时间:2013-06-18 00:41:31

标签: clojure datomic

我希望在datomic

中使用这种类型的测试

- >创建数据库

- >加载大量数据(A点)

- >做测试/允许用户交互   (添加了一堆数据)

- >恢复到A点

- >再次开始测试

我知道有备份和恢复命令。可以通过datomic api访问它们吗?

1 个答案:

答案 0 :(得分:2)

Datomic允许您与所有人include a transaction locally without having to first share it,并且事务可以对数据库执行任何操作。所以答案是肯定的,

基本过程是:

  1. 抓住数据库的当前状态,或任何历史起点。
  2. 创建一个加载大量数据的事务,让您指向A
  3. 使用with来使用包含该数据的数据库来进行一些测试
  4. 为下一组测试创建下一个修改事务
  5. 重复。
  6. 我们的想法是创建一个本地状态,根据您希望使用的历史记录,运行测试。这允许您为旧版本的应用程序运行测试,因为您可以针对原始数据库的旧状态运行它们。