PVDB

From PREX Wiki
Revision as of 14:44, 17 June 2019 by Sanghwa (Talk | contribs)

Jump to: navigation, search

PREX Main << Weekly Analysis Coordinator


Parity Run Database (also called PVDB) stores run related information using mysql. DB is running on cdaqdb1 (alias of cdaqfs1) and mirrored over to hallcdb (read-only slave of the cdaqdb1 master). There are a-rcdb and c-rcdb for Hall A and Hall C, respectively. It utilizes existing rcdb framework that has been developed and used for Hall D. While we keep the same schema from the rcdb, we added some parity conditions such as helicity and spin rotator information. For questions, please contact sanghwa@jlab.org.

General information


Run information is filled at the Start/End of each run as well as after the prompt analysis. For adaq machines, the connection string is set to:
RCDB_CONNECTION: mysql://apcoda@cdaqdb1.jlab.org:3306/a-rcdb

A wrapper script is located at:
~adaq/scripts/addRunStart2pvdb
~adaq/scripts/addRunEnd2pvdb


Instruction for users

  • Connection:

RCDB_CONNECTION is already set on adaq machines to the master DB. To read DB entries from other machines, set it to the read-only copy:

> setenv RCDB_CONNECTION mysql://apcoda@hallcdb.jlab.org:3306/a-rcdb

How to read from the DB

  • using CLI:

To see available options:
PLEASE DO NOT USE "write" or "replace" unless you really need!

> rcnd -h

Print total number of runs and last run number as well as condition names

> rcnd 

List condition names (with description)

> rcnd --list

Get a condition value for a given run:

> rcnd run# condition_name
ex) > rcnd 2461 run_type


How to add/modify comments for the DB

on the adaq machines, type:

> slcomment

New slcomment.png

- Type Run Number and click "OK"
- Existing comment will appear on the box below. If there is nothing, it means there was no comment before.
- Add your comment and click "SAVE AND EXIT"

WAC DB TOOL

on the adaq machines, type:

> pvdb_edit

WACDBTOOL.png

- Type Run Number and click "Connect"
- Run type and Run flag currently stored in the DB will be shown. You may not see nothing for "Run flag" if this is the first time you are updating the condition.
- Select new "Run type" and "Run flag".

Expert tools

Deployment log

  • May 2019:

- pvdb successfully tested with the parity DAQ. The wrapper scripts are integrated into halogRunStart_parity and halogRunEnd_parity.

- Modified login script to set the environment variables for the connection string and pvdb home on adaq machines.

  • June 10, 2019

- After the transition from hcrcdb to cdaqdb1, we set up the database again. Now the database name is a-rcdb.

Login as root: (if you don’t know the password and you think you have a reason why you need it, contact Sanghwa Park, Brad Sawatzky.

DB user ‘pvdb’ created with access granted from jlab subnet. Granted all privileges on a-rcdb:

> GRANT ALL PRIVILEGES ON `a-rcdb`.* TO ‘pvdb’@’%.jlab.org’;
> SHOW GRANTS for pvdb@’%.jlab.org’;

- adaq user account already exists (apcoda - no pw, apar - pw required). Granted ALL privileges on a-rcdb.

- DB structure created:

 1) Use get_started.py
 To create both default rcdb condition types and parity default types (defined in parity_rcdb)
 > python get_started.py
 Check with rcnd command:
 > rcnd (should print conditions)
 2) To add new conditon types:
 Use add_condition_type.py
 Using CLI (rcnd):
 >rcnd --create my_value --type string --description "This is my value"
 ConditionType created with name='my_value', type='string', is_many_per_run='False

- Added condition type "experiment"

  • June 11, 2019

- Added "sl_comment" condition and created gui script for WAC. Alias set as "slcomment" and available from any adaq machines.
- script: ~/scripts/guis/pvdblog.tcl (use edit_comment.py)

  • June 13, 2019

- Added "good_charge" and "run_flag" conditions
- replace comment gui script with a new one: ~/scripts/gui/wac_comment.py

Other info

  • connect to the master DB (recommended only for authorized ppl):
> mysql -h cdaqdb1 -u <user_name> -p
  • use pvdb database for test and development. Do it by setting the connection string accordingly.
  • a-rcdb accounts:
    • pvdb (access from jlab subnet, pw required), granted all privileges on a-rcdb, pvdb
    • apar (access from adaq subnet, pw required), granted all privileges on a-rcdb, pvdb
    • apcoda (access from adaq subnet, no pw required), granted all privileges on a-rcdb, pvdb. Used to push run information from adaq.
  • To modify rcdb_home:

location: /groups/halla/www/hallweb/html/rcdb_home
First, set the primary group to harcdb

> sg harcdb



back to WAC