diff options
author | Dylan William Hardison <dylan@hardison.net> | 2014-08-21 17:15:16 +0200 |
---|---|---|
committer | Dylan William Hardison <dylan@hardison.net> | 2014-08-26 15:20:14 +0200 |
commit | 82346032ecfef148e78a8d19e17c5ed41ed41d10 (patch) | |
tree | c216529ac0aaabf7d551e840abfea38285ee1dcd /contrib | |
parent | 0922b44649075532dea64bdc6469446a34f5219f (diff) | |
download | bugzilla-82346032ecfef148e78a8d19e17c5ed41ed41d10.tar.gz bugzilla-82346032ecfef148e78a8d19e17c5ed41ed41d10.tar.xz |
Bug 1056087 - contrib/merge-users.pl fails if there are no duplicate bug_user_last_visit rows
Diffstat (limited to 'contrib')
-rwxr-xr-x | contrib/merge-users.pl | 9 |
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) { |