Fixes a bug in get summaries times analytics, a=chris

Chris Pollett [2013-01-06 19:Jan:th]
Fixes a bug in get summaries times analytics, a=chris
Filename
lib/index_bundle_iterators/network_iterator.php
models/crawl_model.php
models/parallel_model.php
models/phrase_model.php
diff --git a/lib/index_bundle_iterators/network_iterator.php b/lib/index_bundle_iterators/network_iterator.php
index 5c977254c..d7b83efac 100644
--- a/lib/index_bundle_iterators/network_iterator.php
+++ b/lib/index_bundle_iterators/network_iterator.php
@@ -299,7 +299,12 @@ class NetworkIterator extends IndexBundleIterator
      }

     /**
+     * Called to make an link for AnalyticsManager about a network query
+     * performed by this iterator.
      *
+     * @param array $sites used by this network iterator
+     * @param int $index which site in array to make link for
+     * @return string html of link
      */
     function makeLookupLink($sites, $index)
     {
diff --git a/models/crawl_model.php b/models/crawl_model.php
index 8291dd44c..a28fdc0e3 100755
--- a/models/crawl_model.php
+++ b/models/crawl_model.php
@@ -923,7 +923,7 @@ EOT;
     {
         $pre_list = array();
         foreach($list_strings as $list_string) {
-            $a_list = unserialize(webdecode(
+            $a_list = @unserialize(webdecode(
                 $list_string[self::PAGE]));
             if($data_field != NULL) {
                 $a_list = $a_list[$data_field];
@@ -1292,4 +1292,4 @@ EOT;
      }

 }
-?>
\ No newline at end of file
+?>
diff --git a/models/parallel_model.php b/models/parallel_model.php
index c04d1a85d..35bd20b43 100755
--- a/models/parallel_model.php
+++ b/models/parallel_model.php
@@ -214,7 +214,15 @@ class ParallelModel extends Model implements CrawlConstants
                     }
                 }
             }
-            AnalyticsManager::set("SUMMARY_TIMES", serialize($elapsed_times));
+            $summary_times_string = AnalyticsManager::get("SUMMARY_TIMES");
+            if($summary_times_string) {
+                $all_elapsed_times = unserialize($summary_times_string);
+            } else {
+                $all_elapsed_times = array();
+            }
+            $all_elapsed_times[] = $elapsed_times;
+            AnalyticsManager::set("SUMMARY_TIMES", serialize(
+                $all_elapsed_times));
         }
         return $summaries;
     }
@@ -491,4 +499,4 @@ class ParallelModel extends Model implements CrawlConstants
     }

 }
-?>
\ No newline at end of file
+?>
diff --git a/models/phrase_model.php b/models/phrase_model.php
index f287bc930..643bd1eda 100755
--- a/models/phrase_model.php
+++ b/models/phrase_model.php
@@ -1000,19 +1000,22 @@ class PhraseModel extends ParallelModel
         if(QUERY_STATISTICS) {
             $summary_times_string = AnalyticsManager::get("SUMMARY_TIMES");
             if($summary_times_string) {
-                $summary_times = unserialize($summary_times_string);
+                $round_summary_times = unserialize($summary_times_string);
                 $summary_delta_time = changeInMicrotime($summaries_time);
                 $summary_time_info = "$summary_delta_time<br /> $in4";
-                $i = 0;
-                $max_time = 0;
-
-                foreach ($summary_times as $summary_time) {
-                    $summary_time_info .= "ID_$i: ".$summary_time."$indent";
-                    $max_time = ($summary_time > $max_time) ?
-                        $summary_time : $max_time;
-                    $i++;
+                $sum_max_time = 0;
+                foreach($round_summary_times as $summary_times) {
+                    $i = 0;
+                    $max_time = 0;
+                    foreach ($summary_times as $summary_time) {
+                        $summary_time_info .= "ID_$i: ".$summary_time."$indent";
+                        $max_time = ($summary_time > $max_time) ?
+                            $summary_time : $max_time;
+                        $i++;
+                    }
+                    $sum_max_time += $max_time;
                 }
-                $net_overhead =  $summary_delta_time - $max_time;
+                $net_overhead =  $summary_delta_time - $sum_max_time;
                 $summary_time_info .=
                     "<br />$in3<i>Network Overhead Sub-Time</i>: ".
                     $net_overhead;
ViewGit