Index: /tags/ipp-20110218/dbconfig/minidvodb.md
===================================================================
--- /tags/ipp-20110218/dbconfig/minidvodb.md	(revision 30969)
+++ /tags/ipp-20110218/dbconfig/minidvodb.md	(revision 30970)
@@ -14,5 +14,7 @@
     dtime_resort    F32    0.0
     dtime_relphot   F32    0.0
+    dtime_verify    F32    0.0
     dtime_merge     F32    0.0
+    dtime_script    F32	   0.0
     epoch           UTC    0001-01-01T00:00:00Z
     mergedvodb_path STR    255
Index: /tags/ipp-20110218/ippScripts/scripts/minidvodb_merge.pl
===================================================================
--- /tags/ipp-20110218/ippScripts/scripts/minidvodb_merge.pl	(revision 30969)
+++ /tags/ipp-20110218/ippScripts/scripts/minidvodb_merge.pl	(revision 30970)
@@ -16,4 +16,6 @@
 my $dtime_relphot;
 my $dtime_merge;
+my $dtime_verify;
+my $dtime_script;
 
 use vars qw( $VERSION );
@@ -36,4 +38,7 @@
 my $relphot = can_run('relphot') or (warn "Can't find relphot" and $missing_tools = 1);
 my $relastro = can_run('relastro') or (warn "Can't find relastro" and $missing_tools = 1);
+my $dvoverify = can_run('dvoverify') or (warn "Can't find dvoverify" and $missing_tools = 1);
+
+
 if ($missing_tools) {
     warn("Can't find required tools.");
@@ -87,4 +92,9 @@
 unless ($no_op) {
     if (defined $mergedvodbReal) {
+
+	#this is chopped into several parts:  addstar, relphot, dvoverify, merge
+
+
+	#addstar
         {
             my $command  = "$addstar -resort";
@@ -105,4 +115,6 @@
             print "addstar -resort time $dtime_addstar\n";
         }
+
+	#relphot
 
         {
@@ -124,4 +136,22 @@
             print "relphot time $dtime_relphot\n";
         }
+	#dvoverify
+	{
+            my $command  = "$dvoverify -s $minidvodb";
+            print "$command\n";
+            my $mjd_dvoverify_start = DateTime->now->mjd;   # MJD of starting script
+
+            my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
+                run(command => $command, verbose => $verbose);
+            unless ($success) {
+                $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
+                &my_die("Unable to perform dvoverify: $error_code", $mergedvodb, $error_code);
+            }
+            $dtime_dvoverify = 86400.0*(DateTime->now->mjd - $mjd_dvoverify_start);   # MJD of starting script
+            print "dvoverify time $dtime_dvoverify\n";
+        }
+
+
+	#Merge
 
         my $this_is_the_first;
@@ -190,4 +220,8 @@
 
 	{
+
+	    $dtime_script = 86400.0*(DateTime->now->mjd - $mjd_start);
+
+
             my $command = "addtool -minidvodb_id $minidvodb_id";
             $command .= " -addminidvodbprocessed";
@@ -197,5 +231,7 @@
             $command .= " -dtime_resort $dtime_resort" if defined $dtime_resort;
             $command .= " -dtime_merge $dtime_merge" if defined $dtime_merge;
-            $command .= " -dbname $dbname" if defined $dbname;
+	    $command .= " -dtime_script $dtime_script" if defined $dtime_script;
+	    $command .= " -dtime_verify $dtime_dvoverify" if defined $dtime_dvoverify;
+	    $command .= " -dbname $dbname" if defined $dbname;
             #print $command;
 
@@ -236,4 +272,6 @@
         $command .= " -dtime_resort $dtime_resort" if defined $dtime_resort;
         $command .= " -dtime_merge $dtime_merge" if defined $dtime_merge;
+    $command .= " -dtime_script $dtime_script" if defined $dtime_script;
+    $command .= " -dtime_verify $dtime_dvoverify" if defined $dtime_dvoverify;
         $command .= " -dbname $dbname" if defined $dbname;
 
Index: /tags/ipp-20110218/ippTools/src/addtool.c
===================================================================
--- /tags/ipp-20110218/ippTools/src/addtool.c	(revision 30969)
+++ /tags/ipp-20110218/ippTools/src/addtool.c	(revision 30970)
@@ -1179,4 +1179,7 @@
   PXOPT_LOOKUP_F32(dtime_resort, config->args, "-dtime_resort", false, false);
   PXOPT_LOOKUP_F32(dtime_merge, config->args, "-dtime_merge", false, false);
+  PXOPT_LOOKUP_F32(dtime_verify, config->args, "-dtime_verify", false, false);
+  PXOPT_LOOKUP_F32(dtime_script, config->args, "-dtime_script", false, false);
+  
   PXOPT_LOOKUP_TIME(epoch, config->args, "-epoch", false, false);
   PXOPT_LOOKUP_S16(fault,         config->args, "-fault", false, false);
@@ -1230,5 +1233,7 @@
                dtime_resort,
                dtime_relphot,
+	       dtime_verify,
                dtime_merge,
+	       dtime_script,
                epoch,
                mergedvodb_path,
@@ -1293,5 +1298,5 @@
   psStringAppend(&query4, "update minidvodbProcessed set merge_order = %"PRIu64,m_order);
   psStringAppend(&query4," where minidvodb_id = %" PRIu64,  minidvodb_id);
-  printf("%s", query4);
+  //printf("%s", query4);
   if (!p_psDBRunQuery(config->dbh, query4)) {
     // rollback
@@ -1511,5 +1516,6 @@
   PXOPT_LOOKUP_F32(dtime_resort,  config->args, "-set_dtime_resort", false, false);
   PXOPT_LOOKUP_F32(dtime_merge,  config->args, "-set_dtime_merge", false, false);
-
+PXOPT_LOOKUP_F32(dtime_verify,  config->args, "-set_dtime_verify", false, false);
+PXOPT_LOOKUP_F32(dtime_script,  config->args, "-set_dtime_script", false, false);
   PXOPT_COPY_S64(config->args, where, "-minidvodb_id",     "minidvodbProcessed.minidvodb_id", "==");
   PXOPT_COPY_STR(config->args, where, "-minidvodb_name",     "minidvodbRun.minidvodb_name", "==");
@@ -1562,4 +1568,18 @@
     cnt++;
  }
+if (dtime_verify) {
+    if (cnt) {
+      psStringAppend(&query, "%s", comma);
+    }
+    psStringAppend(&query, " dtime_verify = %f", dtime_verify);
+    cnt++;
+ }
+if (dtime_script) {
+    if (cnt) {
+      psStringAppend(&query, "%s", comma);
+    }
+    psStringAppend(&query, " dtime_script = %f", dtime_script);
+    cnt++;
+ }
 
   psString whereClause = psDBGenerateWhereConditionSQL(where, NULL);
@@ -1567,5 +1587,5 @@
 
   if (!p_psDBRunQuery(config->dbh, query)) {
-   psError(PS_ERR_UNKNOWN, false, "database error");
+    psError(PS_ERR_UNKNOWN, false, "database error \n%s\n",query );
    psFree(query);
    return false;
Index: /tags/ipp-20110218/ippTools/src/addtoolConfig.c
===================================================================
--- /tags/ipp-20110218/ippTools/src/addtoolConfig.c	(revision 30969)
+++ /tags/ipp-20110218/ippTools/src/addtoolConfig.c	(revision 30970)
@@ -195,5 +195,7 @@
     psMetadataAddF32(addminidvodbprocessedArgs, PS_LIST_TAIL, "-dtime_relphot",  0,    "define elapsed time for relphot (seconds)", NAN);
     psMetadataAddF32(addminidvodbprocessedArgs, PS_LIST_TAIL, "-dtime_resort", 0,    "define elapsed time for resort (seconds)", NAN);
+    psMetadataAddF32(addminidvodbprocessedArgs, PS_LIST_TAIL, "-dtime_verify",    0,    "define elapsed time for DVO verify (seconds)", NAN);
     psMetadataAddF32(addminidvodbprocessedArgs, PS_LIST_TAIL, "-dtime_merge",    0,    "define elapsed time for DVO merge (seconds)", NAN);
+    psMetadataAddF32(addminidvodbprocessedArgs, PS_LIST_TAIL, "-dtime_script",    0,    "define elapsed time for script (seconds)", NAN);
     psMetadataAddTime(addminidvodbprocessedArgs, PS_LIST_TAIL, "-epoch",         0,    "time merge is finished", NULL);
     psMetadataAddStr(addminidvodbprocessedArgs, PS_LIST_TAIL, "-mergedvodb_path",0,    "path of merged dvodb", NULL);
@@ -220,6 +222,7 @@
     psMetadataAddF32(updateminidvodbprocessedArgs, PS_LIST_TAIL, "-set_dtime_relphot",  0,    "define elapsed time for relphot (seconds)", 0);
     psMetadataAddF32(updateminidvodbprocessedArgs, PS_LIST_TAIL, "-set_dtime_resort", 0,    "define elapsed time for resort (seconds)", 0);
+    psMetadataAddF32(updateminidvodbprocessedArgs, PS_LIST_TAIL, "-set_dtime_verify",    0,    "define elapsed time for DVO verify (seconds)", 0);
     psMetadataAddF32(updateminidvodbprocessedArgs, PS_LIST_TAIL, "-set_dtime_merge",    0,    "define elapsed time for DVO merge (seconds)", 0);
-    
+    psMetadataAddF32(updateminidvodbprocessedArgs, PS_LIST_TAIL, "-set_dtime_script",    0,    "define elapsed time for script (seconds)", 0);
     psMetadata *argSets = psMetadataAlloc();
     psMetadata *modes = psMetadataAlloc();
