我正在编写一个在客户端和服务器之间同步数据的应用程序,因此我经常需要检查服务器上的实体是否比客户端上的任何实体更新。
Datomic 是否保证所有新实体的 id 都大于以前存在的实体?在我把它作为我的程序逻辑的重要组成部分之前只需要知道。
我正在编写一个在客户端和服务器之间同步数据的应用程序,因此我经常需要检查服务器上的实体是否比客户端上的任何实体更新。
Datomic 是否保证所有新实体的 id 都大于以前存在的实体?在我把它作为我的程序逻辑的重要组成部分之前只需要知道。
实体 id至少由创建实体的分区和单调递增的数字组成。如果您将实体 ID 视为数值,那么它们将没有顺序 ID。
相反,您应该查看它们的事务并比较它们的:db/txInstant
属性值,该值是默认创建并附加到系统上的所有事务的。:db/txInstant
的值是一个时间戳,用于捕获交易发生的瞬间。
另外,看看(tx-report-queue)
,它用于监视或与外部系统同步数据。它使您可以访问由交易者广播的基于 Datomic 推送的新颖性模型。