Skip to content
Snippets Groups Projects
Commit d5c73568 authored by Phil Höfer's avatar Phil Höfer
Browse files

Improve Error Handling

parent 2e923c80
No related branches found
No related tags found
No related merge requests found
Pipeline #9961 passed
......@@ -122,36 +122,39 @@ fn main() -> Result<(), io::Error> {
fn read_from_db(config: HashMap<String, String>, mut predictor: SetPredictor) -> SetPredictor {
let default_password = &String::from("");
let db_password = config.get("db_password").unwrap_or(default_password);
let mut client = Client::connect(format!("host=database-postgresql.metager-2 user=metager password={} dbname=postgres",db_password).as_str(), NoTls);
match client {
Ok(mut c) => {
let mut count = 0;
match c.query("SELECT query FROM public.logs_partitioned ORDER BY time DESC LIMIT 5000", &[]) {
Ok(rows) => {
for row in rows {
let query: &str = row.get(0);
predictor.update(query);
count += 1;
match config.get("db_password") {
Some(db_password) => {
let mut client = Client::connect(format!("host=database-postgresql.metager-2 user=metager password={} dbname=postgres",db_password).as_str(), NoTls);
match client {
Ok(mut c) => {
let mut count = 0;
match c.query("SELECT query FROM public.logs_partitioned ORDER BY time DESC LIMIT 5000", &[]) {
Ok(rows) => {
for row in rows {
let query: &str = row.get(0);
predictor.update(query);
count += 1;
}
println!("{} queries read from DB", count);
predictor
},
Err(e) => {
println!("Error while reading from DB: {}", e);
predictor
}
}
println!("{} queries read from DB", count);
predictor
},
Err(e) => {
println!("Error while reading from DB: {}", e);
println!("Error while connecting to DB: {}", e);
predictor
}
}
},
Err(e) => {
println!("Error while connecting to DB: {}", e);
None => {
println!("No DB password found. Skipping...");
predictor
}
}
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment