Pman.js
[Pman.Core] / Prune.php
index d827318..2ed9ea3 100644 (file)
--- a/Prune.php
+++ b/Prune.php
@@ -25,19 +25,21 @@ class Pman_Core_Prune extends Pman
     var $cli = false;
     
     function getAuth() {
+        
+         
         $ff = HTML_FlexyFramework::get();
         if (!empty($ff->cli)) {
             $this->cli = true;
             return true;
         }
-//        return true;// for test only
+        
+ //        return true;// for test only
         return false;
     }
     
-    function get($m="", $opts)
+    function get($m="", $opts=array())
     {
-        
-        // prune irrelivant stuff..
+         // prune irrelivant stuff..
        
         
         
@@ -48,7 +50,8 @@ class Pman_Core_Prune extends Pman
     {
         // 40 seconds ? to delete 100K records..
        // DB_DataObject::debugLevel(1);
-        $f = DB_DataObject::Factory('reader_article');
+       /*
+        $f = DB_DataObject::Factory('Events');
         $f->query("
             DELETE FROM Events where 
                   event_when < NOW() - INTERVAL {$inM} MONTH
@@ -56,7 +59,7 @@ class Pman_Core_Prune extends Pman
                   action != 'NOTIFY'
                   LIMIT 100000
         ");
-        
+        */
         // notificication events occur alot - so we should trash them more frequently..
       /*  $f = DB_DataObject::Factory('reader_article');
         $f->query("
@@ -76,6 +79,9 @@ class Pman_Core_Prune extends Pman
          */
         
         //DB_DataObject::debugLevel(1);
+        $f = DB_DataObject::Factory('Events');
+        $before = $f->count();
+
         $f = DB_DataObject::Factory('Events');
         $f->selectAdd();
         $f->selectAdd("on_id, on_table, min(id) as min_id, max(id) as max_id, count(*) as mm");
@@ -85,6 +91,7 @@ class Pman_Core_Prune extends Pman
         $f->orderBy('mm desc') ;
         $f->limit(10000);
         $ar = $f->fetchAll();
+
         foreach($ar as $f) {
             $q = DB_DataObject::Factory('Events');
             $q->query("DELETE FROM Events where 
@@ -94,13 +101,15 @@ class Pman_Core_Prune extends Pman
                   AND
                   on_table = '{$q->escape($f->on_table)}'
                   AND
-                  id > {$f->min_id}
+                  id >  {$f->min_id}  -- allow the first one to stay....
                   AND
-                  id < {$f->max_id}
+                  id <= {$f->max_id}
             ");
         }
         
-        
+        $f = DB_DataObject::Factory('Events');
+        $after = $f->count();
+        echo "DELETED : " . ($before - $after) . " records\n";