From e297b98f721bf32d8d4331677eefe49823db32b9 Mon Sep 17 00:00:00 2001 From: Ellie Huxtable Date: Fri, 4 Nov 2022 09:08:20 +0000 Subject: Add local event log storage (#390) * Add event data structures This adds the data structures required to start syncing events, rather than syncing history directly. Adjust event Fix Add event data structure to client * Add server event table sql * Add client event table migration Adjust migration * Insert into event table from client * Add event merge function Right now this just ensures we have the right amount of events given the history we have BUT it will also be used to merge CREATE/DELETE events, resulting in history being deleted :) * Make CI happy * Adjust * we don't limit history length any more * Update atuin-client/src/database.rs Co-authored-by: Conrad Ludgate * fix usage * Fix typo * New Rust, new clippy stuff Co-authored-by: Conrad Ludgate --- atuin-client/migrations/20220505083406_create-events.sql | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 atuin-client/migrations/20220505083406_create-events.sql (limited to 'atuin-client/migrations') diff --git a/atuin-client/migrations/20220505083406_create-events.sql b/atuin-client/migrations/20220505083406_create-events.sql new file mode 100644 index 00000000..f6cafeba --- /dev/null +++ b/atuin-client/migrations/20220505083406_create-events.sql @@ -0,0 +1,11 @@ +create table if not exists events ( + id text primary key, + timestamp integer not null, + hostname text not null, + event_type text not null, + + history_id text not null +); + +-- Ensure there is only ever one of each event type per history item +create unique index history_event_idx ON events(event_type, history_id); -- cgit v1.3.1