From 9d6d4973520e1b05e1699e7a8f63e9ca2e773b77 Mon Sep 17 00:00:00 2001 From: "gerv%gerv.net" <> Date: Thu, 12 Feb 2004 07:41:36 +0000 Subject: Bug 232897 - make collectstats.pl work with shadow databases, by reading from shadow and writing to master. Patch by gerv; r=bbaetz, a=justdave. --- collectstats.pl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'collectstats.pl') diff --git a/collectstats.pl b/collectstats.pl index bc7b24884..e04169453 100755 --- a/collectstats.pl +++ b/collectstats.pl @@ -441,7 +441,13 @@ sub CollectSeriesData { 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; + Bugzilla->switch_to_shadow_db(); + my $shadow_dbh = Bugzilla->dbh; + my $serieses = $dbh->selectall_hashref("SELECT series_id, query, creator " . "FROM series " . "WHERE frequency != 0 AND " . @@ -472,7 +478,7 @@ sub CollectSeriesData { # 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. - my $data = $dbh->selectall_arrayref($sql); + my $data = $shadow_dbh->selectall_arrayref($sql); my $count = scalar(@$data) || 0; @@ -482,6 +488,7 @@ sub CollectSeriesData { } sub CleanupChartTables { + Bugzilla->switch_to_main_db(); my $dbh = Bugzilla->dbh; $dbh->do("LOCK TABLES series WRITE, user_series_map AS usm READ"); @@ -501,4 +508,5 @@ sub CleanupChartTables { } $dbh->do("UNLOCK TABLES"); + Bugzilla->switch_to_shadow_db(); } -- cgit v1.2.3-24-g4f1b