Implement :db/noHistory #89

Open
opened 2020-08-06 16:54:44 +00:00 by gburd · 0 comments
gburd commented 2020-08-06 16:54:44 +00:00 (Migrated from github.com)

We currently ignore this entirely. It might be useful to allow this to be set.

The goal is to avoid spending lots of disk on obsolete facts. It's not entirely clear to me how to reconcile "it's only a storage hint, not a logical directive"[1] with the ability to query history, but I guess figuring out how to do so is part of solving this issue!

There are a few potential implementation strategies that I haven't thought through:

  • Delete all obsoleted rows in the transaction log when a new row is about to be inserted.
  • Replace the earliest consistent value in the transaction log with the new value.
  • Replace the value, or all columns, with nulls in previous rows in the transaction log.
  • Don't write these datoms to the log at all.

[1] http://datomic.narkive.com/gIuZhcp8/db-nohistory

We currently ignore this entirely. It might be useful to allow this to be set. The goal is to avoid spending lots of disk on obsolete facts. It's not entirely clear to me how to reconcile "it's only a storage hint, not a logical directive"[1] with the ability to query history, but I guess figuring out how to do so is part of solving this issue! There are a few potential implementation strategies that I haven't thought through: - Delete all obsoleted rows in the transaction log when a new row is about to be inserted. - Replace the earliest consistent value in the transaction log with the new value. - Replace the value, or all columns, with nulls in previous rows in the transaction log. - Don't write these datoms to the log at all. [1] http://datomic.narkive.com/gIuZhcp8/db-nohistory
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: greg/mentat#89
No description provided.