Print

Print


Author: [log in to unmask]
Date: Wed Feb 10 17:10:02 2016
New Revision: 4199

Log:
Catch errors better when computing trigger rate.

Modified:
    java/branches/jeremy-dev/run-database/src/main/java/org/hps/run/database/RunDatabaseBuilder.java

Modified: java/branches/jeremy-dev/run-database/src/main/java/org/hps/run/database/RunDatabaseBuilder.java
 =============================================================================
--- java/branches/jeremy-dev/run-database/src/main/java/org/hps/run/database/RunDatabaseBuilder.java	(original)
+++ java/branches/jeremy-dev/run-database/src/main/java/org/hps/run/database/RunDatabaseBuilder.java	Wed Feb 10 17:10:02 2016
@@ -828,13 +828,17 @@
             startTimestamp = runSummary.getGoTimestamp();
         } else if (runSummary.getPrestartTimestamp() != null) {
             startTimestamp = runSummary.getPrestartTimestamp();
-        } 
+        }
         Integer endTimestamp = runSummary.getEndTimestamp();
         if (endTimestamp!= null && startTimestamp != null && runSummary.getTotalEvents() > 0) {
-            double triggerRate = ((double) runSummary.getTotalEvents() /
-                    ((double) runSummary.getEndTimestamp() - (double) runSummary.getGoTimestamp()));
-            runSummary.setTriggerRate(triggerRate);
-            LOGGER.info("trigger rate set to " + runSummary.getTriggerRate());
+            try {
+                double triggerRate = ((double) runSummary.getTotalEvents() /
+                        ((double) endTimestamp - (double) startTimestamp));
+                runSummary.setTriggerRate(triggerRate);
+                LOGGER.info("trigger rate set to " + runSummary.getTriggerRate() + " Hz");
+            } catch (Exception e) {
+                LOGGER.log(Level.SEVERE, "Error calculating trigger rate.", e);
+            }
         } else {
             LOGGER.warning("Skipped trigger rate calculation due to missing data.");
         }