types: unify all epoch timestamps to i64
All epoch timestamp fields (timestamp, last_replayed, created_at on nodes; timestamp on relations) are now i64. Previously a mix of f64 and i64 which caused type seams and required unnecessary casts. - Kill now_epoch() -> f64 and now_epoch_i64(), replace with single now_epoch() -> i64 - All formatting functions take i64 - new_node() sets created_at automatically - journal-ts-migrate handles all nodes, with valid_range check to detect garbage from f64->i64 bit reinterpretation - capnp schema: Float64 -> Int64 for all timestamp fields
This commit is contained in:
parent
b4bbafdf1c
commit
4747004b36
4 changed files with 232 additions and 56 deletions
|
|
@ -216,9 +216,10 @@ pub fn migrate() -> Result<(), String> {
|
|||
uses: old_entry.uses,
|
||||
wrongs: old_entry.wrongs,
|
||||
state_tag,
|
||||
last_replayed: 0.0,
|
||||
last_replayed: 0,
|
||||
spaced_repetition_interval: 1,
|
||||
position: 0,
|
||||
created_at: 0,
|
||||
community_id: None,
|
||||
clustering_coefficient: None,
|
||||
degree: None,
|
||||
|
|
@ -255,9 +256,10 @@ pub fn migrate() -> Result<(), String> {
|
|||
uses: 0,
|
||||
wrongs: 0,
|
||||
state_tag: unit.state.clone().unwrap_or_default(),
|
||||
last_replayed: 0.0,
|
||||
last_replayed: 0,
|
||||
spaced_repetition_interval: 1,
|
||||
position: 0,
|
||||
created_at: 0,
|
||||
community_id: None,
|
||||
clustering_coefficient: None,
|
||||
degree: None,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue