summaryrefslogtreecommitdiff
path: root/src/boot/app.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/boot/app.rs')
-rw-r--r--src/boot/app.rs30
1 files changed, 6 insertions, 24 deletions
diff --git a/src/boot/app.rs b/src/boot/app.rs
index 690bcf4..89eec12 100644
--- a/src/boot/app.rs
+++ b/src/boot/app.rs
@@ -23,42 +23,27 @@ impl<'a> Boot<'a> {
let mut tx = self.db.begin().await?;
let resume_point = tx.sequence().current().await?;
- let user_histories = tx.users().all(resume_point).await?;
- let channel_histories = tx.channels().all(resume_point).await?;
- let message_histories = tx.messages().all(resume_point).await?;
+ let users = tx.users().all(resume_point).await?;
+ let channels = tx.channels().all(resume_point).await?;
+ let messages = tx.messages().all(resume_point).await?;
tx.commit().await?;
- let users = user_histories
- .iter()
- .filter_map(|user| user.as_of(resume_point))
- .collect();
-
- let channels = channel_histories
- .iter()
- .filter_map(|channel| channel.as_of(resume_point))
- .collect();
-
- let messages = message_histories
- .iter()
- .filter_map(|message| message.as_of(resume_point))
- .collect();
-
- let user_events = user_histories
+ let user_events = users
.iter()
.map(user::History::events)
.kmerge_by(Sequence::merge)
.filter(Sequence::up_to(resume_point))
.map(Event::from);
- let channel_events = channel_histories
+ let channel_events = channels
.iter()
.map(channel::History::events)
.kmerge_by(Sequence::merge)
.filter(Sequence::up_to(resume_point))
.map(Event::from);
- let message_events = message_histories
+ let message_events = messages
.iter()
.map(message::History::events)
.kmerge_by(Sequence::merge)
@@ -72,9 +57,6 @@ impl<'a> Boot<'a> {
Ok(Snapshot {
resume_point,
- users,
- channels,
- messages,
events,
})
}