Index: /trunk/ippMonitor/czartool/czarpoll.pl
===================================================================
--- /trunk/ippMonitor/czartool/czarpoll.pl	(revision 40876)
+++ /trunk/ippMonitor/czartool/czarpoll.pl	(revision 40877)
@@ -12,4 +12,5 @@
 use POSIX qw/strftime/;
 use List::MoreUtils qw(uniq);
+use DateTime;
 
 # local classes
@@ -243,4 +244,7 @@
     my ($period) = @_;
 
+    my $polldate;
+    my $datenow;
+    my $timediff;
     my $label;
     my $new;
@@ -267,4 +271,20 @@
     # main polling loop
     while (1) {
+        #get the time of last czarpoll update
+        $polldate = $czarDb->getPollDate();
+        $polldate=~/^(\d{4})\-(\d{2})\-(\d{2}) (\d{2}):(\d{2}):(\d{2})$/;
+        my $date=DateTime->new(year=>$1,month=>$2,day=>$3,hour=>$4,minute=>$5,second=>$6,time_zone=>"HST");
+        $date->set_time_zone("UTC");
+
+        $datenow=DateTime->now;
+        $timediff = ($datenow->epoch) - ($date->epoch); 
+        if($timediff < 300.) { 
+            print "There is a recent Czarpoll iteration already made ($timediff sec ago)\n";
+            print "* Going to sleep\n";
+            sleep($period);
+            print "* Waking up\n";
+
+            next;
+        }
 
         my $iterationStartTime = time();
