GlueX Offline Meeting, January 8, 2014

From GlueXWiki
Jump to: navigation, search

GlueX Offline Software Meeting
Wednesday, January 8, 2013
1:30 pm EST
JLab: CEBAF Center F326/327


  1. Announcements
    1. Collaboration Meeting Agenda, February 20-22
  2. Review of minutes from the last meeting: all
  3. REST format and Track Swimming (Paul) (REST xml, DDetectorMatches.h)
  4. JANA job crash status
  5. CCDB 0.09 (Dmitry)
  6. Recent experience with CCDB (Mark)
  7. Event Store Overview Documentation
  8. Splitting up sim-recon into mcsim, recon, and analysis (Paul):
    1. Delete PID library deprecated code?: DKinFit, DTwoGammaFit, DPiPlus, DPhysicsEvent, DPiMinus, DParticleSet, DVertexIndependentResults
    2. Where to put "universal" things like DKinematicData, libraries/include/* ?
  9. Mantis Bug Tracker Review
  10. Review of recent repository activity: all

Communication Information

Video Conferencing

Desktop Sharing

You can view the computer desktop in the meeting room at JLab via the web.

  1. Go to
  2. In the "join a meeting" box enter the Hall D code: 1833622
  3. Fill in the participant registration form.


To connect by telephone:

  1. dial:
  2. enter access code followed by the # sign: 1833622#


Talks can be deposited in the directory /group/halld/www/halldweb/html/talks/2014-1Q on the JLab CUE. This directory is accessible from the web at .



  • CMU: Will Levine, Paul Mattione
  • FSU: Aristeidis Tsaris
  • IU: Kei Moriya, Matt Shepherd
  • JLab: Mark Dalton, Mark Ito (chair), David Lawrence, Dmitry Romanov, Sascha Somov, Nathan Sparks, Simon Taylor, Elliott Wolin, Beni Zihlmann
  • MIT: Justin Stevens
  • NWU: Sean Dobbs

Find a recording of this meeting on the ReadyTalk site.


  • We have to start thinking about an agenda for the Collaboration Meeting on February 20-22. Please send your ideas/requests for talks to Mark.
  • Elliott told us that the database and web servers for the Counting House are largely installed.

Review of minutes from the last meeting

  • Simon has sent the "before" plot from the single-track reconstruction test to Richard Jones.
  • Mark has checked in the new genealogy scheme onto the trunk.

REST Format and Track Swimming

Paul led us through his new scheme for matching charged tracks with the non-DC detector subsystems. This was illustrated by walking us through the new XML for the REST format.

There a new matching elements allowing many-to-many correlations. He also stores DOCA-to-track information for calorimeter clusters that show the distance to the closest track even if not considered a match. Will has found this useful for cluster classification.

The system gives a factor of five increase in REST analysis rate for b1pi events (i. e., post-reconstruction processing). It comes with a 20% increase in the event size.

Simulation and Reconstruction Crash Status

Kei confirmed that the fix that Simon put in to prevent tracks being swum infinite distances seems to have cured the problem where the reconstruction processes a single event without end. Kei now finds a failure rate of a percent or so for his jobs, down from 5%. Remaining failures have short output files and problems are coming from hdgeant or mcsmear. HUP and ZFATAL errors seem to have disappeared.

Kei will continue to track down the residual errors.

New JANA Release and Resources

David is about to release a new version of JANA that uses "resources" to fetch magnetic field maps rather than getting them directly from the CCDB, as we have been doing up to now. The new scheme, at its base, fetches and caches a file locally for these large files.

There are corresponding small changes in sim-recon. When these changes appear on the trunk, then all users will have to go to the new version of JANA.

Mark will make a new tagged release before we make this change. Soon after, David will transition us to the new scheme.

CCDB 0.09

Dmitry announced a new release of the CCDB, version 0.09. He also outlined plans for the next version. See his wiki page for release notes and details of future plans.

Recent experience with CCDB

Mark reviewed recent a exercise with Sean and Dmitry for starting to put new calibration constants into the CCDB. Sean was able to start adding constants on his own and is providing feedback on the process. See a representative email and a sample help message that Mark showed to get a feeling for the process.

Event Store

Paul brought up the need for something like [EventStore], a product developed for CLEO, to aid in analysis, especially in selecting subsets of events for consideration. Matt proposed the use of EventStore some time ago, but there hasn't been any work on implementation. Sean has had experience with the system from his time on CLEO. Matt questioned whether we need to try to use the original code base, or rather develop a new system what retains the same features; the original is over a decade old. Related to this question is whether HDDM in its current form is usable under EventStore.

Elliott mentioned that Gagik Gavalian from ODU has developed a tagged database for CLAS data. His system was presented at the recent Software Review and received a favorable reaction from the panel. Mark will contact Gagik about a talk.

Sean agreed to contact Valentin Kuznetsov about the viability of the original code and any underlying software technology.

Splitting up sim-recon into mcsim, recon, and analysis

Paul had some detailed questions on how we should proceed.

Delete PID library deprecated code?

There are several classes for analysis whose function can be taken over, in a more general way, by Paul's Analysis Tools. They are rarely used anymore. Examples are:

  • DKinFit
  • DTwoGammaFit
  • DPiPlus
  • DPhysicsEvent
  • DPiMinus
  • DParticleSet
  • DVertexIndependentResults

He proposed removing them from the trunk version.. We agreed that he should go ahead and do this. Note that since this will be done via the repository, all old versions are recoverable with Subversion.

Where to put "universal" things like DKinematicData, libraries/include/* ?

If we break things up into packages, there will be classes and libraries that will be needed for more than one package. On the other hand, we would like to avoid duplication of code in separate source trees. Mark suggested that this type of code could be put into a separate general/utility library and maintained separately. This avoids duplication, but increases the number of libraries that we need to keep track of.

Action Items

  • Circulate document on database/webserver deployment developed by JLab IT. -> Mark
  • Make a new tagged release. -> Mark
  • Check in changes to support JANA 0.7 after release is tagged. -> David
  • Start up a cronjob to automatically generate SQLite versions of the CCDB. -> Mark, Dmitry
  • Research IT Division procedure for restoring a backup of the MySQL database.