- Table of contents
- The Configuration DB Wiki
The Configuration DB Wiki¶
The Configuration DB is considered to be the actual database plus the web service that gives access to the database. The database is hidden from end users by the web service, which presents a number of WSDL interfaces, see below. A Python API has been provided to access the web service. It is expected that most users will access the Configuration DB via the Python API.
There are two separate copies of the database running in separate buildings. These are configured to be master and slave, with updates to the master being automatically pushed to the slave. Both of these machines provide WSDL interfaces that are only accessible to the control room services. During normal operation the control room services will use the master which is situated in the control room. In the event of the failure of the master, the slave will be promoted to master and the control room services will be pointed at the new master.
For access to the data by other users a third web service is provided on a publicly accessible machine cdb.mice.rl.ac.uk. This web service provides read only access to the data via the slave. This isolates the master and control room services from any user activity.
Machine | Location | Database | Web Service |
CDB Master | control room | master | control room access only |
CDB Slave | PPD | slave | control room access only |
cdb.mice.rl.ac.uk | PPD | N/A | read only access |
Components of the Configuration DB¶
- Alarm Handler
- Beamline
- Cabling
- Calibration
- Control (PIDCtrl)
- Cooling Channel
- Geometry
- State Machine
- Target
For descriptions of these components see the Python API
Configuration DB Installation¶
Public Interface (cdb.mice.rl.ac.uk)
CDB Viewer¶
This is a web GUI for viewing data from the CDB
http://cdb.mice.rl.ac.uk/cdbviewer/
Code¶
launchpad project page https://launchpad.net/mcdb
[[computing-software:WAR files|WAR files]]
Server¶
https://launchpad.net/mcdb/mice.cdb.server
To check out the code use:
bzr branch lp:mcdb/mice.cdb.server
To build the war use:
ant war
To generate the wsdl use:
ant wsdl
Python Client¶
https://launchpad.net/mcdb/mice.cdb.client.api-python (There is a later version here https://code.launchpad.net/~janusz-martyniak/mcdb/mice.cdb.client.api-python)
To check out the code use:
bzr branch lp:mcdb
To use you will need python-suds installed. Install as root: yum install python-suds
Java Client¶
https://code.launchpad.net/mcdb/mice.cdb.client.api-java
To check out the code use:
bzr branch lp:mcdb/mice.cdb.client.api-java
This has build time dependencies on mice.cdb.server. Edit build.properties to point to the lib and wsdl directories in mice.cdb.server.
To generate the wsdl use:
ant wsimport
To build the distribution including the javadoc and jar file use:
ant dist
CDB Viewer¶
https://code.launchpad.net/mcdb/mice.cdb.gwt
To check out the code use:
bzr branch lp:mcdb/mice.cdb.gwt
To build the war use:
ant war
Other Bits and Bobs - need updating¶
Obsolete¶
Updated by Brew, Chris almost 3 years ago ยท 64 revisions