Configuration_Database
Download
Report
Transcript Configuration_Database
Configuration Database
MICE Collaboration Meeting 28, Sofia
David Forrest
University of Glasgow
Antony Wilson
Science and Technology Facilities Council (RAL)
Overview
My (David’s) final talk on the
configuration database and Antony’s
first
Current state + handover
Summary of work done
Handover
Antony Wilson is the new go-to guy for database
stuff
My contribution is over a few days after this CM
I have run a well attended database workshop
covering on call expert training, client code,
database development
I have slides from this including solutions to the
exercise, and audio recording if you are having
trouble sleeping – should be online later today
In addition I am writing a note on the database
which justifies the design, introduces client code
development, troubleshooting, describes what you
need to do to communicate back and forth with the
system as it stands
This should be updated consistently
What’s done
Requirements capture, design
Postgres installed, running, backed up
Apache Tomcat running robustly
Database API implemented for set values, tagged
set values, calibrations, alarm handler limits
PHP User interfaces (freebies)
Classes in G4MICE (Malcolm) for client code
development
EPICS client (James)
Performance testing
New: Update set values of a run (password
protected functionality)
Updating Set Values
•
This is controversial and James assures it will be
password protected on the client side
•
It is critical it is not used as a substitute for
competent record keeping
•
Writing bad information to the database is
vandalism no matter who tells you to do it
•
No plans to implement functionality to update a
tagged run as this should have a permanently
immutable meaning. If you want to change it make
a new tag!
What’s done
Backup (of database and associated
server side software)
Documentation
In summary, at minimum we should be
using the database for beamline
settings and automatic entry of settings
such as magnet currents
Documentation – The D Word
There is a MICE Note nearing
completion justifying the requirements
and design
It also includes what to do in the event
of a failure
The code is documented. No, really.
Cabling – The C Word
Better thought of as 'Electronic components and
cabling'
We had a design for cabling specific to the
detectors which took in the use cases but was too
complex
Effort began to arrive at a more generic, simpler
description
I will finish this but want to ensure I understand
what people want as output
Electronic Components &Cabling
What’s not done
My thesis (W.I.P)
Network modification
Cabling
Polarity (although I have stepped through how
to do it in the solution slides of the db
workshop)
What else?
Development/evolution is ongoing.
Into the Future
There has to be a flow of conversation between
analysis, detector groups, online/sw groups and Antony
System needs to be championed as it sits on the
interface with many other systems. It has minimal
demands on those systems but there inertia with work
required for integration.
The database is only as good as whats in it – constraints
will have to be tightened, GUIs improved but there is a
human element also
Handover
The new database guy is Antony Wilson,
who you will see in a moment
Somehow despite only just joining he is
now responsible for any bugs I may have
produced
Also he is responsible for further
development
The alternative is....
He will be grateful of your support going forward...
Thanks
Thanks to everyone who helped this
project along.
Thanks for the chance to do it :)
Perhaps leave questions til the end?
Antony Wilson
Based at RAL
Java
MySQL
Client and server
Initial Tasks
Bring code inline with new project coding standards
Javadoc
log4j server side logging
Move testing into junit framework
Switch from Soap to Axis server
Generate Java client API
Packaging
jar/aar file
Deployment
Use rpms where possible
Tomcat
Setup script
Simple instructions
Intermediate Tasks
Review existing use cases
Gather new use cases
Produce proposal to address use cases
Tasks for this Week
Meet people involved in
Creating the data
Using the data
4443
8080
FIREWALL
heplnm068
Apache
/api
/elog
/redmine
heplnm069
Tomcat
CDB API
4443
MICENET
online box
CDB client
API
postgres
Configuration
database
4443
8080
FIREWALL
heplnm068
heplnm069
postgres
Tomcat
CDB read
only API
Apache
/api
/elog
/redmine
Configuration
database
Tomcat
CDB API
continuous
backup
MICENET
4443
online box
new mouse box
CDB
client API
postgres
4443
This is
a manual failover
controlled by a
configuration file
Configuration
database
Tomcat
CDB API