eva
eva copied to clipboard
A distributed database-system implementing an entity-attribute-value data-model that is time-aware, accumulative, and atomically consistent
We should take some time to revisit comparator optimization. In particular, for most index-based operations they are the dominant factor by a fair margin. I trust Timothy Dean's work so...
There is a subclass of exceptions that the `with-retries` macro is setup to ignore. I believe this was originally to bypass non-transient exceptions when doing things like passing a bad...
Usage of `clojure.data.avl` can be deprecated.
It is currently impossible to make edits to already installed attributes in eva. This can be problematic if an attribute is installed incorrectly since it will require either: 1. A...
Doing queries with an in-memory database and a historic snapshot has been throwing exceptions. ```clj eva.dev.repl=> (def history-db (eva/history db)) #'eva.dev.repl/history-db eva.dev.repl=> (eva/q '[:find ?balance :in $ :where [?e :account/name...
If I transact the following: ```clj [{:db/id :book/author :db/ident :book/primary_author}] ``` I get: ```clj {:message "Cannot merge two extant permanent ids. This typically happens when two distinct entity-ids either are...
The health check on the transactor should be deferred until after all startup has occurred, incl (but potentially not limited to): - metrics - tracing - logical database initialization If...
Datomic Example: ```clj (d/q '[:find ?A ?B :where (or (and [?A :foo ?B] [(pos? ?B)]))] [[1 :foo 2]]) #{[1 2]} ``` Eva Example: ```clj (q '[:find ?A ?B :where (or...