Index: /trunk/ippTasks/nightly_science.pro
===================================================================
--- /trunk/ippTasks/nightly_science.pro	(revision 38228)
+++ /trunk/ippTasks/nightly_science.pro	(revision 38229)
@@ -132,19 +132,22 @@
 #
 macro ns.add.date
-  if ($0 != 2) 
-    echo "USAGE: ns.add.date (YYYY-MM-DD)"
+  if ($0 != 3) 
+    echo "USAGE: ns.add.date (YYYY-MM-DD) (dbname)"
     break
   end
 
-   book newpage nsData $1
-   book setword nsData $1 nsState NEW
-   book setword nsData $1 dbname $DB:0 
-
-   book newpage nsDiffs $1
-   book setword nsDiffs $1 nsDiffState TOWARP
-   book setword nsDiffs $1 nsObservingState UNKNOWN
-
-   book newpage nsStacks $1
-   book setword nsStacks $1 nsStackState TOWARP
+   # build key from date and database name
+   sprintf key "%s-%s" $1 $2
+   book newpage nsData $key
+   book setword nsData $key nsState NEW
+   book setword nsData $key date $1
+   book setword nsData $key dbname $2
+
+   book newpage nsDiffs $key
+   book setword nsDiffs $key nsDiffState TOWARP
+   book setword nsDiffs $key nsObservingState UNKNOWN
+
+   book newpage nsStacks $key
+   book setword nsStacks $key nsStackState TOWARP
 
 end
@@ -153,10 +156,12 @@
     book npages nsData -var Npages
     for i 0 $Npages
-       book getpage nsData $i -var date
-       book getword nsData $date nsState -var state
-       book getword nsStacks $date nsStackState -var Sstate
-       book getword nsDiffs $date nsDiffState -var Dstate
-       book getword nsDiffs $date nsObservingState -var Ostate
-       echo $date $state $Sstate $Dstate $Ostate
+       book getpage nsData $i -var key
+       book getword nsData $key date -var date
+       book getword nsData $key dbname -var dbname
+       book getword nsData $key nsState -var state
+       book getword nsStacks $key nsStackState -var Sstate
+       book getword nsDiffs $key nsDiffState -var Dstate
+       book getword nsDiffs $key nsObservingState -var Ostate
+       echo $key $date $dbname $state $Sstate $Dstate $Ostate
     end
 end
@@ -186,16 +191,23 @@
     stderr $LOGDIR/ns.initday.log
     $today = `date -u +%Y-%m-%d`
-    book newpage nsData $today
-    book setword nsData $today nsState NEW
-    book newpage nsStacks $today
-    book setword nsStacks $today nsStackState TOWARP
-    book newpage nsDiffs $today
-    book setword nsDiffs $today nsDiffState TOWARP
-    book setword nsData $today dbname $DB:0 
-
-#    command echo $today
-   $run = nightly_science.pl --clean_old --date $today --dbname $DB:0
-#    add_standard_args run
-    command $run
+    # loop over all databases
+    for i 0 $DB:n
+        $thisDB = $DB:$i
+        sprintf key "%s-%s" $today $thisDB
+        book newpage nsData $key
+        book setword nsData $key date $today
+        book setword nsData $key nsState NEW
+        book setword nsData $key dbname $thisDB 
+        book newpage nsStacks $key
+        book setword nsStacks $key date $today
+        book setword nsStacks $key nsStackState TOWARP
+        book newpage nsDiffs $key
+        book setword nsDiffs $key date $today
+        book setword nsDiffs $key nsDiffState TOWARP
+
+       #command echo $today
+       $run = nightly_science.pl --clean_old --date $today --dbname $thisDB
+       command $run
+    end
   end
 
@@ -307,17 +319,18 @@
      stderr $LOGDIR/ns.stacks.log
 
-     book getpage nsData $ns_stackPAGE -var date
-     book getword nsStacks $date nsStackState -var ns_STATE
-     book getword nsDiffs $date nsDiffState -var ns_diff_STATE
-     book getword nsData $date dbname -var DBNAME
+     book getpage nsData $ns_stackPAGE -var key
+     book getword nsStacks $key date -var date
+     book getword nsStacks $key nsStackState -var ns_STATE
+     book getword nsDiffs $key nsDiffState -var ns_diff_STATE
+     book getword nsData $key dbname -var DBNAME
      book npages nsData -var Npages
 
     if ($VERBOSE > 5) 
-       echo "ns.stacks.load: " $ns_stackPAGE $date $ns_STATE $Npages
+       echo "ns.stacks.load: " $ns_stackPAGE $date $DBNAME $ns_STATE $Npages
     end
 
      $ns_stackPAGE ++
      if ($ns_stackPAGE >= $Npages) set ns_stackPAGE = 0
-     option $date
+     option $key
 
      if ("$ns_STATE" != "TOWARP") break
@@ -377,17 +390,18 @@
      stderr $LOGDIR/ns.stacks.log
 
-     book getpage nsData $ns_RstackPAGE -var date
-     book getword nsStacks $date nsStackState -var ns_STATE
-     book getword nsDiffs $date nsDiffState -var ns_diff_STATE
-     book getword nsData $date dbname -var DBNAME
+     book getpage nsData $ns_RstackPAGE -var key
+     book getword nsStacks $key date -var date
+     book getword nsStacks $key nsStackState -var ns_STATE
+     book getword nsDiffs $key nsDiffState -var ns_diff_STATE
+     book getword nsData $key dbname -var DBNAME
      book npages nsData -var Npages
 
     if ($VERBOSE > 5) 
-       echo "ns.stacks.run: " $ns_RstackPAGE $date $ns_STATE $Npages
+       echo "ns.stacks.run: " $ns_RstackPAGE $key $date $ns_STATE $Npages
     end
 
      $ns_RstackPAGE ++
      if ($ns_RstackPAGE >= $Npages) set ns_RstackPAGE = 0
-     option $date
+     option $key
 
      if (("$ns_STATE" != "STACKING")&&("$ns_STATE" != "TOWARP")&&("$ns_STATE" != "FORCETOWARP")) break
@@ -445,16 +459,17 @@
      stderr $LOGDIR/ns.stacks.log
 
-     book getpage nsData $ns_CstackPAGE -var date
-     book getword nsStacks $date nsStackState -var ns_STATE
-     book getword nsData $date dbname -var DBNAME
+     book getpage nsData $ns_CstackPAGE -var key
+     book getword nsStacks $key date -var date
+     book getword nsStacks $key nsStackState -var ns_STATE
+     book getword nsData $key dbname -var DBNAME
      book npages nsData -var Npages
 
      if ($VERBOSE > 5)
-	echo "ns.stacks.confirm: " $ns_CstackPAGE $date $ns_STATE $Npages
+	echo "ns.stacks.confirm: " $ns_CstackPAGE $key $date $DBNAME $ns_STATE $Npages
      end
 
      $ns_CstackPAGE ++
      if ($ns_CstackPAGE >= $Npages) set ns_CstackPAGE = 0
-     option $date
+     option $key
 
      if ("$ns_STATE" != "STACKING") break
@@ -512,17 +527,18 @@
      stderr $LOGDIR/ns.diffs.log
 
-     book getpage nsData $ns_diffPAGE -var date
-     book getword nsDiffs $date nsDiffState -var ns_STATE
-     book getword nsStacks $date nsStackState -var ns_stack_STATE
-     book getword nsData $date dbname -var DBNAME
+     book getpage nsData $ns_diffPAGE -var key
+     book getword nsDiffs $key date -var date
+     book getword nsDiffs $key nsDiffState -var ns_STATE
+     book getword nsStacks $key nsStackState -var ns_stack_STATE
+     book getword nsData $key dbname -var DBNAME
      book npages nsData -var Npages
 
     if ($VERBOSE > 5) 
-       echo "ns.diffs.load: " $ns_diffPAGE $date $ns_STATE $Npages
+       echo "ns.diffs.load: " $ns_diffPAGE $key $date $DBNAME $ns_STATE $Npages
     end
 
      $ns_diffPAGE ++
      if ($ns_diffPAGE >= $Npages) set ns_diffPAGE = 0
-     option $date
+     option $key
 
      if ("$ns_STATE" != "TOWARP") break
@@ -580,8 +596,9 @@
      stderr $LOGDIR/ns.diffs.log
 
-     book getpage nsData $ns_RdiffPAGE -var date
-     book getword nsDiffs $date nsDiffState -var ns_STATE
-     book getword nsStacks $date nsStackState -var ns_stack_STATE
-     book getword nsData $date dbname -var DBNAME
+     book getpage nsData $ns_RdiffPAGE -var key
+     book getword nsDiffs $key date -var date
+     book getword nsDiffs $key nsDiffState -var ns_STATE
+     book getword nsStacks $key nsStackState -var ns_stack_STATE
+     book getword nsData $key dbname -var DBNAME
      book npages nsData -var Npages
 
@@ -592,5 +609,5 @@
      $ns_RdiffPAGE ++
      if ($ns_RdiffPAGE >= $Npages) set ns_RdiffPAGE = 0
-     option $date
+     option $key
 
      if (("$ns_STATE" != "DIFFING")&&("$ns_STATE" != "QUEUEDIFFS")&&("$ns_STATE" != "TOWARP")&&("$ns_STATE" != "FORCETOWARP")) break
