Repo integration #15

Merged
micialware merged 35 commits from repo-integration into master 2026-09-09 12:47:42 +03:00
4 changed files with 23 additions and 3 deletions
Showing only changes of commit 3663765284 - Show all commits

No files matched your search

+1 -1
View File
@@ -190,7 +190,7 @@ impl<T: EntityData + Clone + Send + Sync, R: Repository<T, D>, D: DbLayer<T>> Qu
.collect::<Vec<_>>(), .collect::<Vec<_>>(),
); );
debug!("Query for {} elements (filtered {}) takes {:?}", self.len(), self.cache.len(), time.elapsed()); debug!("Query for {} elements (filtered {}) takes {:?}", data_repository.len(), self.cache.len(), time.elapsed());
} }
pub fn handles(&self) -> impl Iterator<Item = EntityHandle<T>> { pub fn handles(&self) -> impl Iterator<Item = EntityHandle<T>> {
+7 -1
View File
@@ -116,9 +116,10 @@ impl SqliteConnection {
error!("Ошибка при checkpoint WAL: {e}"); error!("Ошибка при checkpoint WAL: {e}");
}); });
connection connection
.query_row("PRAGMA optimize", [], |_| Ok(())) .execute("PRAGMA optimize", [])
.unwrap_or_else(|e| { .unwrap_or_else(|e| {
error!("Ошибка при оптимизации БД: {e}"); error!("Ошибка при оптимизации БД: {e}");
0
}); });
self.0 = None; self.0 = None;
@@ -127,3 +128,8 @@ impl SqliteConnection {
self.0 = Some(default_connection()); self.0 = Some(default_connection());
} }
} }
impl Drop for SqliteConnection {
fn drop(&mut self) { self.finish(); }
}
+3
View File
@@ -106,6 +106,9 @@ impl NavigatedPage<DictionaryMessage> for DictionaryState {
fn navigated(&mut self) { fn navigated(&mut self) {
self.included = Default::default(); self.included = Default::default();
self.tag_map = Default::default(); self.tag_map = Default::default();
let groups = self.state.word_groups.read();
self.groups_query.load(&groups);
drop(groups);
self.update_tags(); self.update_tags();
} }
+12 -1
View File
@@ -273,7 +273,18 @@ impl SyncState {
.unwrap_or_else(|e| { .unwrap_or_else(|e| {
error!("Ошибка при checkpoint WAL: {e}"); error!("Ошибка при checkpoint WAL: {e}");
}); });
connection
.execute("VACUUM;", [])
.unwrap_or_else(|e| {
error!("Ошибка при checkpoint WAL: {e}");
0
});
connection
.execute("PRAGMA optimize;", [])
.unwrap_or_else(|e| {
error!("Ошибка при checkpoint WAL: {e}");
0
});
connection.finish(); connection.finish();
} }
} }