From 1e39ddef52137fbc1109273348f7a674946cb2a4 Mon Sep 17 00:00:00 2001 From: Vignesh Date: Sat, 24 Jun 2017 18:34:52 +1000 Subject: [PATCH 1/4] Fix #645 and fix SQL query --- src/bin/transfer-crates.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/bin/transfer-crates.rs b/src/bin/transfer-crates.rs index 48e507757bb..7d362b54112 100644 --- a/src/bin/transfer-crates.rs +++ b/src/bin/transfer-crates.rs @@ -52,10 +52,10 @@ fn transfer(tx: &postgres::transaction::Transaction) { println!("===================================================="); println!("WARNING"); println!(""); - println!("this may not be the same github user, different avatar urls"); + println!("this may not be the same github user, different github IDs"); println!(""); - println!("from: {:?}", from.gh_avatar); - println!("to: {:?}", to.gh_avatar); + println!("from: {:?}", from.gh_id); + println!("to: {:?}", to.gh_id); get_confirm("continue?"); } @@ -75,7 +75,7 @@ fn transfer(tx: &postgres::transaction::Transaction) { ).unwrap(); let rows = stmt.query(&[&from.id, &(OwnerKind::User as i32)]).unwrap(); for row in rows.iter() { - let id: i32 = row.get("id"); + let owner_id: i32 = row.get("owner_id"); let krate = Crate::find(tx, row.get("crate_id")).unwrap(); println!("transferring {}", krate.name); let owners = krate.owners_old(tx).unwrap(); @@ -84,8 +84,8 @@ fn transfer(tx: &postgres::transaction::Transaction) { } let n = tx.execute( "UPDATE crate_owners SET owner_id = $1 - WHERE id $2", - &[&to.id, &id], + WHERE owner_id = $2", + &[&to.id, &owner_id], ).unwrap(); assert_eq!(n, 1); } From 5c59027df90c307c58c053754a1651282c2a4491 Mon Sep 17 00:00:00 2001 From: Vignesh Date: Mon, 26 Jun 2017 12:44:42 +1000 Subject: [PATCH 2/4] Changed to gh_id --- src/bin/transfer-crates.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/transfer-crates.rs b/src/bin/transfer-crates.rs index 7d362b54112..b700858e52f 100644 --- a/src/bin/transfer-crates.rs +++ b/src/bin/transfer-crates.rs @@ -48,7 +48,7 @@ fn transfer(tx: &postgres::transaction::Transaction) { let from = User::find_by_login(tx, &from).unwrap(); let to = User::find_by_login(tx, &to).unwrap(); - if from.gh_avatar != to.gh_avatar { + if from.gh_id != to.gh_id { println!("===================================================="); println!("WARNING"); println!(""); From ac011d7459380e64012544e05abf44660808281a Mon Sep 17 00:00:00 2001 From: Vignesh Date: Tue, 11 Jul 2017 20:11:45 +1000 Subject: [PATCH 3/4] Code cleanup Moved update statement outside for loop and removed singular crate owner transfer assert. --- src/bin/transfer-crates.rs | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/bin/transfer-crates.rs b/src/bin/transfer-crates.rs index b700858e52f..914c950785d 100644 --- a/src/bin/transfer-crates.rs +++ b/src/bin/transfer-crates.rs @@ -67,29 +67,28 @@ fn transfer(tx: &postgres::transaction::Transaction) { ); get_confirm("continue"); - let stmt = tx.prepare( "SELECT * FROM crate_owners WHERE owner_id = $1 AND owner_kind = $2", ).unwrap(); let rows = stmt.query(&[&from.id, &(OwnerKind::User as i32)]).unwrap(); + for row in rows.iter() { - let owner_id: i32 = row.get("owner_id"); let krate = Crate::find(tx, row.get("crate_id")).unwrap(); println!("transferring {}", krate.name); let owners = krate.owners_old(tx).unwrap(); if owners.len() != 1 { println!("warning: not exactly one owner for {}", krate.name); } - let n = tx.execute( - "UPDATE crate_owners SET owner_id = $1 - WHERE owner_id = $2", - &[&to.id, &owner_id], - ).unwrap(); - assert_eq!(n, 1); } + let _ = tx.execute( + "UPDATE crate_owners SET owner_id = $1 + WHERE owner_id = $2", + &[&to.id, &from.id], + ).unwrap(); + get_confirm("commit?"); } From b18383376a3427d07bc7f4a21858b1699ac5b0c0 Mon Sep 17 00:00:00 2001 From: Vignesh Date: Sat, 15 Jul 2017 13:31:03 +1000 Subject: [PATCH 4/4] Code improvments Removed `let _ =` on database transaction --- src/bin/transfer-crates.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/transfer-crates.rs b/src/bin/transfer-crates.rs index 914c950785d..1c536612247 100644 --- a/src/bin/transfer-crates.rs +++ b/src/bin/transfer-crates.rs @@ -83,7 +83,7 @@ fn transfer(tx: &postgres::transaction::Transaction) { } } - let _ = tx.execute( + tx.execute( "UPDATE crate_owners SET owner_id = $1 WHERE owner_id = $2", &[&to.id, &from.id],