gcdserver¶
gcdserver is a set of tools for importing data into the MongoDB GCD database and retrieving that data to build I3Geometry, I3Calibration, and I3DetectorStatus objects. Each supported data type has a specific import script. Supported data types include DOMCal, VEMCal, snow depth, and baseline XML files, noise rate JSON files, and run configuration XML files. Pymongo, zmq, and pyzmq are required dependencies for running import scripts and tests.
gcdserver consists entirely of Python code and does not need compilation. Tests are run assuming the availability of a mongoDB server on ‘localhost’
Resources¶
Note
Due to security restrictions on the MongoDB server at WIPAC, most of
these tools must be run either inside the WIPAC network or on SPS/SPTS. To
run on SPS/SPTS, you must include
--dbhost=dbs --i3livehost=i3live --i3mshost=i3ms
in your command-line
arguments.
BuildGCD.py
: Build a GCD file using the gcdserver database for the specified run.DBDaemon.py
: Daemon that listens for GCD database updates from I3MS and adds them to the MongoDB database at WIPACGCDDiff.py
: Compare two GCD files and list the differencesI3OmDbDump.py
: Import initial geometry/calibration data from I3OmDb database tables into gcdserverI3OmDbRunImport.py
: Import calibration data for a specific run into the gcdserver databaseInitializeDB.py
: Create the ‘omdb’ database in MongoDB and add indexes. Optionally drop existing data.TransactionManager.py
: Manage gcdserver database transactions
Options:
--list=N: List the last N transactions
--replay=i: Resend data in transaction i over I3MS
--rollback=i: Rollback transaction i in the local database. Note that
rollbacks are not synchronized over I3MS and must be done
seperately at WIPAC and at SPS