Common DFOS tools:

dfos = Data Flow Operations System, the common tool set for DFO
*make printable new: see also:
  v1.5.5 - updates the VIRTUAL mcalibs properly for PHOENIX CALIBs
called by moveProducts
[ used databases ] databases qc_metadata..qc_products (check for products ingested)
[ used dfos tools ] dfos tools qcdate
[ output used by ] output updated AB; used by dfos tools downstream
[ upload/download ] upload/download none



The tool runs on all ABs as listed in AB_list_<MODE>_<DATE> under $DFO_MON_DIR.

The tool has two fundamental modes:
   - CALIB to run on CALIB data,
   - SCIENCE to run on SCIENCE data.

updateAB is executed after all products have been processed, QC checked, certified, distributed to their final place, and renamed (if applicable).

The tool:
   - verifies products (CALIB: virtual or real; SCIENCE: existing or not);
   - verifies associated calib products
   - checks for associated graphical information and logs.


Updated ABs.

How to use

Type updateAB -h | -v for on-line help and version;

updateAB -m CALIB -d 2024-12-30

to update ABs for mode CALIB and date 2024-12-30.

Note: this tool is typically called by moveProducts, the user usually won't call it explicitly.


Use dfosExplorer, or type dfosInstall -t updateAB .

Loging and status

The tool writes the status values cal_Updated or sci_Updated into DFO_STATUS. It also writes a timestamp into each updated AB.

Configuration files

None. The tool reads some configuration information from config.createAB which is detailed here.

The tool may use the 'hidden' configuration key NOCHECK in config.createAB which turns off checking for virtual/real status of calibrations in the ABs. This is useful for some special applications but not in usual dfos workflows.

The tool is PHOENIX-aware. It then ignores the configured NOCHECK value and either never checks (for the standard IDP production) or always checks (for the mcalib production).

Workflow description (both modes)

1. Prepare lists
- check for existence of $DFO_CAL_DIR/<date> directory

2. Update ABs

2.1 Loop over ABs:
- get some AB related variables

2.2 check list of product files of AB (PRODUCTS)

2.3 verify product files (MCALIB) (check for existence in $DFO_CAL_DIR/<date>)

2.4 verify additional product files (MASSOC)

2.5 check for RBLOG name (if successful)

2.6 check for additional information for package (FURTHER)

2.7 updates SOF_CONTENT section (constituted from RAWFILE and MCALIB sections)

2.8 update AB, add status flag 'updated'

2.9 bring AB to $DFO_AB_DIR; end of loop

Last update: April 26, 2021 by rhanusch