CODA 2.6 Release Notes

CODA 2.6 is an extension of the current 2.5 release that supports new CODA 3 technologies. An example setup script for the user can be found in the "examples" directory (dosetupcoda26). It will have to be modified by the user before it can be run.

Requirements to run CODA 2.6

  1) RHEL4 or higher  (RHEL5 issues are addressed in "examples/rhel5")
  2) VxWorks 5.5 Kernel and cross compiler (/site/vxworks/5.5/ppc/host/x86-linux/bin)
  3) JAVA sdk 1.6 or better  (/apps/java/jdk1.6.0_03)

Additional example bootscripts and crl code can be found in the "examples" directory.

Getting Started

Using CODA 2.6 is potentially a little more quirky than was CODA 2.5 for most of you who are familiar with the later. This is necessary in order to provide an appropriate platform for a transition to CODA 3 technologies. The two primary upgrades being the JAVA-based RunControl/Experiment Control and "cMsg" the CODA Publish-Subscribe messaging system. What this means in a practical sense for the User is that he must start up TWO separate databases for use by the CODA 2.6 distribution (remember 2 heads are better than 1).

  1) First the user must have the standard mSQL database running. It remains unchanged
     from the CODA 2.5 version and in fact CODA 2.6 components can actually be pointed
     directly to an existing running CODA 2.5 database.
     HOWEVER, we advocate making a COPY of the existing databases and start up another msqld
     on a different host for exclusive use by CODA 2.6. There are instructions in the
     examples directory on doing this.
  2) For any CODA 2.6 component to be started up they will require the new CODA 3 database
     which can be started up with the command "rcplatform". This is refered to as the "Platform"
     and is a JVM in which the new JAVA Agent control system resides. The platform is the
     analogy to the msqld, and must be running at all times for CODA 2.6 components to 
     be functional. Before starting the platform the user must have the EXPID environment variable
     set to his experiment/database name. This is typically done with a setup script and an
     example is provided in the "examples" directory.
     The advantage of the Platform is that it can be started on any machine you wish. The CODA 2.6
     components do NOT need to know (eg via MSQL_TCP_HOST) where you started it. It will be found,
     or they will wait and continue to query for it until it is started somewhere.

The two databases are stored in two seperate directories specified by the User. By default the mSQL database resides in $CODA/common/rcdb unless the User specifies $MSQL_HOME to a different directory before starting up the msqld. The Platform will use a diretory pointed to by the ENV variable $COOL_HOME. This should be set as well prior to starting up rcplatform. A default COOL database can be found in the examples directory (cool_db_example.tar). It can be upacked and pointed to by the $COOL_HOME env variable to get you started.

With both msqld and rcplatform running you will be able to run the CODA 2.6 Run Control GUI. This command is JAVA based and is specified by for example: "rcgui -name RCG1" Where RCG1 is just the name of the GUI. You can of course have multiple GUI's running but they must be specifed with different names.

The msqld database can be edited and modified in the same way as CODA 2.5, with the "cedit" and "dbedit" tools. This is how new configurations should be created and modified. HOWEVER, the User must manually update the rcplatform database if any changes are made to the msqld database. This can be done from a menu item in the Run Control GUI ("Translate DB to COOL"). The user need only select the configuration name that he wishes to update from a list provided.

CODA components are started the same way but are renamed to distiguish them from their CODA 2.5 counterparts. They are now called - coda_roc_rc3, coda_eb_rc3, coda_er_rc3 etc... The main difference in the new CODA 2.6 components (besides bug fixes) is that they now use the cMsg system to communicate with the RC Platform, as well as generate LOG messages. This means for VXWORKS based ROCs one must download the cMsg libraries instead of the old CMLOG libraries. An example boot script is provided in the "examples/boot" directory.

CODA Readout list Changes

CODA Readout lists remain largely unchanged from the CODA 2.5 distribution, with the exception of primary Readout lists specifically for Trigger Supervisor Crates running the coda_ts_rc3 component. These lists require that a new library be available (ie downloaded at Boot time) for use by the TS component.

   This library can be found at $CODA/VXWORKSPPC/lib/tsUtil.o

An example boot script for a TS crate is in "examples/boot", and an example readout list can be found in "examples/crl".

When using the new trigger supervisor utility and coda_ts the Run Control GUI will be able to automatically display Live Time statistics for the run. This information is compiled by the coda_ts and periodically sent to the Platform.


I will be adding to these regularly. If you have questions please contact me directly.

   David Abbott
   DAQ Group