Moved episode indexing into a transaction.

This commit is contained in:
Jordan Petridis 2017-11-23 21:30:17 +02:00
parent 5570fdd118
commit 91f4a30c01
No known key found for this signature in database
GPG Key ID: CEABAD9F5683B9A6

View File

@ -1,4 +1,6 @@
use rayon::prelude::*; use rayon::prelude::*;
use diesel::prelude::*;
use diesel::Identifiable; use diesel::Identifiable;
use rss; use rss;
@ -46,12 +48,15 @@ impl Feed {
let db = connection(); let db = connection();
let con = db.get().unwrap(); let con = db.get().unwrap();
episodes.into_iter().for_each(|x| { let _ = con.transaction::<(), Error, _>(|| {
let e = x.index(&con); episodes.into_iter().for_each(|x| {
if let Err(err) = e { let e = x.index(&con);
error!("Failed to index episode: {:?}.", x); if let Err(err) = e {
error!("Error msg: {}", err); error!("Failed to index episode: {:?}.", x);
}; error!("Error msg: {}", err);
};
});
Ok(())
}); });
Ok(()) Ok(())
} }