summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDylan William Hardison <dylan@hardison.net>2014-08-21 17:15:16 +0200
committerDylan William Hardison <dylan@hardison.net>2014-08-26 15:20:14 +0200
commit82346032ecfef148e78a8d19e17c5ed41ed41d10 (patch)
treec216529ac0aaabf7d551e840abfea38285ee1dcd
parent0922b44649075532dea64bdc6469446a34f5219f (diff)
downloadbugzilla-82346032ecfef148e78a8d19e17c5ed41ed41d10.tar.gz
bugzilla-82346032ecfef148e78a8d19e17c5ed41ed41d10.tar.xz
Bug 1056087 - contrib/merge-users.pl fails if there are no duplicate bug_user_last_visit rows
-rwxr-xr-xcontrib/merge-users.pl9
1 files changed, 7 insertions, 2 deletions
diff --git a/contrib/merge-users.pl b/contrib/merge-users.pl
index ddb828eef..86b209ab2 100755
--- a/contrib/merge-users.pl
+++ b/contrib/merge-users.pl
@@ -154,12 +154,17 @@ my $dupe_ids = $dbh->selectcol_arrayref("
SELECT earlier.id
FROM bug_user_last_visit as earlier
INNER JOIN bug_user_last_visit as later
- ON (earlier.user_id != later.user_id AND earlier.last_visit_ts < later.last_visit_ts
+ ON (earlier.user_id != later.user_id
+ AND earlier.last_visit_ts < later.last_visit_ts
AND earlier.bug_id = later.bug_id)
WHERE (earlier.user_id = ? OR earlier.user_id = ?)
AND (later.user_id = ? OR later.user_id = ?)",
undef, $old_id, $new_id, $old_id, $new_id);
-$dbh->do("DELETE FROM bug_user_last_visit WHERE " . $dbh->sql_in('id', $dupe_ids));
+
+if (@$dupe_ids) {
+ $dbh->do("DELETE FROM bug_user_last_visit WHERE " .
+ $dbh->sql_in('id', $dupe_ids));
+}
# Migrate records from old user to new user.
foreach my $table (keys %changes) {