Commit 9d6d4973 authored by gerv%gerv.net's avatar gerv%gerv.net

Bug 232897 - make collectstats.pl work with shadow databases, by reading from…

Bug 232897 - make collectstats.pl work with shadow databases, by reading from shadow and writing to master. Patch by gerv; r=bbaetz, a=justdave.
parent 8c096c53
...@@ -441,7 +441,13 @@ sub CollectSeriesData { ...@@ -441,7 +441,13 @@ sub CollectSeriesData {
CleanupChartTables() if ($days_since_epoch % 7 == 0); CleanupChartTables() if ($days_since_epoch % 7 == 0);
# We save a copy of the main $dbh and then switch to the shadow and get
# that one too. Remember, these may be the same.
Bugzilla->switch_to_main_db();
my $dbh = Bugzilla->dbh; my $dbh = Bugzilla->dbh;
Bugzilla->switch_to_shadow_db();
my $shadow_dbh = Bugzilla->dbh;
my $serieses = $dbh->selectall_hashref("SELECT series_id, query, creator " . my $serieses = $dbh->selectall_hashref("SELECT series_id, query, creator " .
"FROM series " . "FROM series " .
"WHERE frequency != 0 AND " . "WHERE frequency != 0 AND " .
...@@ -472,7 +478,7 @@ sub CollectSeriesData { ...@@ -472,7 +478,7 @@ sub CollectSeriesData {
# We need to count the returned rows. Without subselects, we can't # We need to count the returned rows. Without subselects, we can't
# do this directly in the SQL for all queries. So we do it by hand. # do this directly in the SQL for all queries. So we do it by hand.
my $data = $dbh->selectall_arrayref($sql); my $data = $shadow_dbh->selectall_arrayref($sql);
my $count = scalar(@$data) || 0; my $count = scalar(@$data) || 0;
...@@ -482,6 +488,7 @@ sub CollectSeriesData { ...@@ -482,6 +488,7 @@ sub CollectSeriesData {
} }
sub CleanupChartTables { sub CleanupChartTables {
Bugzilla->switch_to_main_db();
my $dbh = Bugzilla->dbh; my $dbh = Bugzilla->dbh;
$dbh->do("LOCK TABLES series WRITE, user_series_map AS usm READ"); $dbh->do("LOCK TABLES series WRITE, user_series_map AS usm READ");
...@@ -501,4 +508,5 @@ sub CleanupChartTables { ...@@ -501,4 +508,5 @@ sub CleanupChartTables {
} }
$dbh->do("UNLOCK TABLES"); $dbh->do("UNLOCK TABLES");
Bugzilla->switch_to_shadow_db();
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment