mirror of
https://github.com/ShadowJonathan/conduit_toolbox.git
synced 2025-06-07 18:07:08 +03:00
discard broken sqlite rows
I did some database surgery on my SQLite DB which somehow caused some rows to be messed up. This change just discords broken rows instead of panicking, allowing the migration to finish.
This commit is contained in:
parent
805baa0705
commit
31ce64ea72
1 changed files with 15 additions and 2 deletions
|
@ -106,9 +106,22 @@ impl SegmentIter for SqliteSegmentIter<'_> {
|
|||
fn iter<'f>(&'f mut self) -> KVIter<'f> {
|
||||
Box::new(
|
||||
self.0
|
||||
.query_map([], |row| Ok((row.get_unwrap(0), row.get_unwrap(1))))
|
||||
.query_map([], |row| Ok((row.get(0), row.get(1))))
|
||||
.unwrap()
|
||||
.map(|r| r.unwrap()),
|
||||
.map(|x| x.unwrap())
|
||||
.filter_map(|(k, v)| {
|
||||
let Ok(k) = k else {
|
||||
println!("ignored a row because its key is malformed");
|
||||
return None;
|
||||
};
|
||||
|
||||
let Ok(v) = v else {
|
||||
println!("ignored a row because its value is malformed");
|
||||
return None;
|
||||
};
|
||||
|
||||
Some((k, v))
|
||||
}),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue