IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 38480


Ignore:
Timestamp:
Jun 16, 2015, 4:38:44 PM (11 years ago)
Author:
heather
Message:

first set of scripts for addtool multi

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTasks/addstar.pro

    r37551 r38480  
    88
    99if ($?ADDSTAGES:n == 0)       set ADDSTAGES:n = 0
     10if ($?MULTIADDSTAGES:n == 0)       set MULTIADDSTAGES:n = 0
    1011
    1112
    1213
    1314book init addPendingExp
    14 
     15book init addPendingMultiExp
     16
     17   
    1518macro addstar.status
    1619  book listbook addPendingExp
    1720end
    1821
     22macro addstar.multi.status
     23    book listbook addPendingMultiExp
     24end   
     25   
    1926macro addstar.reset
    2027  book init addPendingExp
    2128end
    2229
     30macro addstar.multi.reset
     31  book init addPendingMultiExp
     32end     
     33   
    2334macro addstar.on
    2435  task addstar.exp.load
     
    2738  task addstar.exp.run
    2839    active true
    29   end
     40    end
     41  task addstar.multiexp.load
     42    active true
     43  end
     44  task addstar.multiexp.run
     45    active true
     46  end   
    3047end
    3148
     
    3552  end
    3653  task addstar.exp.run
     54    active false
     55  end
     56  task addstar.multiexp.load
     57    active false
     58  end
     59  task addstar.multiexp.run
    3760    active false
    3861  end
     
    109132end
    110133
     134
     135   
    111136macro del.addstages
    112137  if ($0 != 2)
     
    139164end
    140165
     166macro add.multiaddstages
     167  if ($0 != 2)
     168    echo "USAGE: add.multiaddstages (multiaddstages)"
     169    break
     170  end
     171  if ($?MULTIADDSTAGES:n == 0)
     172    list MULTIADDSTAGES -add $1
     173    return
     174  end
     175
     176  local found
     177  $found = 0
     178  for i 0 $MULTIADDSTAGES:n
     179    if ($MULTIADDSTAGES:$i == $1)
     180      $found = 1
     181      echo "$MULTIADDSTAGES:$i set"
     182      last
     183    end
     184  end
     185 
     186  if ($found == 0)
     187    list MULTIADDSTAGES -add $1
     188  end
     189end
     190
     191
     192   
     193macro del.multiaddstages
     194  if ($0 != 2)
     195    echo "USAGE: del.multiaddstages (multiaddstages)"
     196    break
     197  end
     198  if ($?MULTIADDSTAGES:n == 0)
     199    return
     200  end
     201
     202  list MULTIADDSTAGES -del $1
     203end
     204
     205macro show.multiaddstages
     206  if ($0 != 1)
     207    echo "USAGE: show.multiaddstages"
     208    break
     209  end
     210  if ($?MULTIADDSTAGES:n == 0)
     211    echo "no addstar stages defined"
     212  end
     213  if ($MULTIADDSTAGES:n == 0)
     214    echo "no addstar stages defined"
     215  end
     216
     217  local i
     218  for i 0 $MULTIADDSTAGES:n
     219    echo $MULTIADDSTAGES:$i
     220  end
     221end
     222
    141223macro stuff
    142224   echo $LOADEXEC_ADD
     
    147229$addstar_DB = 0
    148230$addstar_stages_DB = 0
    149 #this may not work for more databases (addstar) will do that later)
     231
     232$addstar_multi_DB = 0
     233$addstar_multi_stages_DB = 0
     234
     235    #this may not work for more databases (addstar) will do that later)
    150236$addstar_revert_DB_C = 0
    151237$addstar_revert_DB_S = 0
     
    225311end
    226312
     313
     314# select images ready for addstar analysis
     315# new entries are added to addPendingExp
     316# skip already-present entries
     317task           addstar.multiexp.load
     318  host         local
     319
     320  periods      -poll $LOADPOLL
     321  periods      -exec $LOADEXEC_ADD
     322  periods      -timeout 300
     323  npending     1
     324
     325  stdout NULL
     326  stderr $LOGDIR/addstar.multiexp.log
     327
     328  task.exec
     329    #if no stages defined we can't run
     330    if ($MULTIADDSTAGES:n == 0) echo "what"
     331 #   if ($MULTIADDSTAGES:n == 0) break
     332    $run = addtool -pendingexp
     333   
     334    #option $ADDSTAGES:$addstar_stages_DB
     335    $run = $run -stage $MULTIADDSTAGES:$addstar_multi_stages_DB -multimode 
     336    option $DB:$addstar_multi_DB
     337    $run = $run -dbname $DB:$addstar_multi_DB
     338    $addstar_multi_stages_DB ++
     339      if ($addstar_multi_stages_DB >= $MULTIADDSTAGES:n)
     340         set addstar_multi_stages_DB = 0
     341         $addstar_multi_DB ++
     342         if ($addstar_multi_DB >= $DB:n) set addstar_multi_DB = 0
     343         #go to next stage. if run out of stages, go to 0 stage and
     344         #cycle through dbname, if run out of dbnames, go to 0 dbname
     345      end
     346    add_poll_args run
     347    add_poll_labels run
     348    echo $run
     349    command $run
     350  end
     351
     352  # success
     353  task.exit    0
     354    # convert 'stdout' to book format
     355    ipptool2book stdout addPendingMultiExp -key add_id -uniq -setword dbname $options:0 -setword pantaskState INIT
     356    if ($VERBOSE > 2)
     357      book listbook addPendingMultiExp
     358    end
     359
     360    # delete existing entries in the appropriate pantaskStates
     361    process_cleanup addPendingMultiExp
     362  end
     363
     364  # default exit status
     365  task.exit    default
     366    showcommand failure
     367  end
     368
     369  task.exit    crash
     370    showcommand crash
     371  end
     372
     373  # operation times out?
     374  task.exit    timeout
     375    showcommand timeout
     376  end
     377end
     378   
    227379# run the addstar script on pending exposures
    228380task           addstar.exp.run
     
    366518end
    367519
     520
     521   
     522# run the addstar script on pending exposures
     523task           addstar.multiexp.run
     524  periods      -poll $RUNPOLL
     525  periods      -exec $RUNEXEC
     526  periods      -timeout 1200
     527
     528  ## we want only a single outstanding addstar job. 
     529  host         local
     530  npending     1
     531
     532  task.exec
     533    book npages addPendingMultiExp -var N
     534    if ($N == 0) break
     535    if ($NETWORK == 0) break
     536   
     537    # look for new images in addPendingExp (pantaskState == INIT)
     538    book getpage addPendingMultiExp 0 -var pageName -key pantaskState INIT
     539    if ("$pageName" == "NULL") break
     540
     541    book setword addPendingMultiExp $pageName pantaskState RUN
     542    book getword addPendingMultiExp $pageName camera -var CAMERA
     543    book getword addPendingMultiExp $pageName exp_tag -var EXP_TAG
     544    book getword addPendingMultiExp $pageName add_id -var ADD_ID
     545    book getword addPendingMultiExp $pageName stage_extra1 -var STAGE_EXTRA1
     546    book getword addPendingMultiExp $pageName stageroot -var STAGEROOT
     547    book getword addPendingMultiExp $pageName stage -var STAGE
     548    book getword addPendingMultiExp $pageName stage_id -var STAGE_ID
     549    book getword addPendingMultiExp $pageName workdir -var WORKDIR_TEMPLATE
     550    book getword addPendingMultiExp $pageName reduction -var REDUCTION
     551    book getword addPendingMultiExp $pageName dvodb  -var DVODB
     552    book getword addPendingMultiExp $pageName minidvodb  -var MINIDVODB
     553    book getword addPendingMultiExp $pageName minidvodb_name  -var MINIDVODB_NAME
     554    book getword addPendingMultiExp $pageName minidvodb_group  -var MINIDVODB_GROUP
     555    book getword addPendingMultiExp $pageName image_only -var IMAGE_ONLY
     556    book getword addPendingMultiExp $pageName dbname -var DBNAME
     557
     558    # specify choice of remote host based on camera and chip (class_id)
     559    # set.host.for.camera $CAMERA FPA
     560
     561    # set the WORKDIR variable
     562    set.workdir.by.camera $CAMERA FPA $WORKDIR_TEMPLATE $default_host WORKDIR
     563
     564    # notes on how this works:
     565    # -- raw workdir examples:
     566    # file://data/@HOST@.0/gpc1/20080130
     567    # neb:///@HOST@-vol0/gpc1/20080130 (need to supply volname?, or are we re-defining this each time?)
     568    # -- out workdir examples:
     569    # file://data/ipp004.0/gpc1/20080130
     570    # neb:///ipp004-vol0/gpc1/20080130
     571
     572    ## generate outroot specific to this exposure (& chip)
     573
     574    if ("$STAGE" == "cam")
     575        sprintf outroot "%s/%s/%s.add.%s" $WORKDIR $EXP_TAG $EXP_TAG $ADD_ID
     576    end
     577    if ("$STAGE" == "staticsky")
     578        sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
     579    end
     580    if ("$STAGE" == "stack")
     581        sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
     582    end
     583    if ("$STAGE" == "skycal")
     584        sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
     585    end
     586    if ("$STAGE" == "diff")
     587        sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
     588    end
     589    if ("$STAGE" == "fullforce")
     590        sprintf outroot "%s.add.%s" $STAGEROOT $ADD_ID
     591    end
     592
     593 
     594
     595    stdout $LOGDIR/addstar.multiexp.log
     596    stderr $LOGDIR/addstar.multiexp.log
     597
     598    $run = addstar_multi_run.pl --add_id $ADD_ID --camera $CAMERA --dvodb $DVODB --stage $STAGE --stageroot $STAGEROOT --outroot $outroot --redirect-output
     599    if ("$REDUCTION" != "NULL")
     600      $run = $run --reduction $REDUCTION
     601    end
     602    if ("$STAGE" == "staticsky")
     603      $run = $run --stage_extra1 $STAGE_EXTRA1  --stage_id $STAGE_ID
     604    end
     605    if ("$STAGE" == "cam")
     606      $run = $run --stage_id $STAGE_ID
     607    end
     608   if ("$STAGE" == "skycal")
     609      $run = $run --stage_id $STAGE_ID
     610    end
     611   if ("$STAGE" == "diff")
     612      $run = $run --stage_id $STAGE_ID --stage_extra1 $STAGE_EXTRA1
     613    end
     614   if ("$STAGE" == "fullforce")
     615      $run = $run --stage_id $STAGE_ID --stage_extra1 $STAGE_EXTRA1
     616    end
     617
     618
     619
     620    if ("$IMAGE_ONLY" == "T")
     621      $run = $run --image-only
     622    end
     623    if ("$MINIDVODB" == "T")
     624    $run = $run --minidvodb
     625    $run = $run --minidvodb_group $MINIDVODB_GROUP
     626        if (("$MINIDVODB_NAME" != "NULL") && ("$MINIDVODB_NAME" != "(null)"))
     627           $run = $run --minidvodb_name $MINIDVODB_NAME
     628    #have addstar_run.pl grab the 'active' name if it is NULL
     629        end
     630    end
     631   
     632    add_standard_args run
     633
     634    # save the pageName for future reference below
     635    options $pageName
     636
     637    # create the command line
     638    if ($VERBOSE > 1)
     639      echo command $run
     640    end
     641    command $run
     642  end
     643
     644  # success
     645  task.exit default
     646    process_exit addPendingMultiExp $options:0 $JOB_STATUS
     647  end
     648
     649  # locked list
     650  task.exit    crash
     651    showcommand crash
     652    echo "hostname: $JOB_HOSTNAME"
     653    book setword addPendingMultiExp $options:0 pantaskState CRASH
     654  end
     655
     656  # operation times out?
     657  task.exit    timeout
     658    showcommand timeout
     659    book setword addPendingMultiExp $options:0 pantaskState TIMEOUT
     660  end
     661end
     662   
    368663task addstar.revert.cam
    369664  host         local
Note: See TracChangeset for help on using the changeset viewer.