# Presentation: 573966

## Trigger Database Status and Plans

**Elizabeth Gallas – FNAL CD**
**(with recent help from Jeremy Simmons, **
**John Weigand, and Adam Lyon)**
***Trigger Working Page***
**http://www-d0.fnal.gov/~gallas/d0_private/trig/trigger.html**
*** ***

- D0 Databases Taking Stock Meeting
- November 01, 2002

- D0 DB Taking Stock

- Nov  1, 2002

## Outline

_**Outline**_

- Purpose
- Properties and Implementation
- Interfaces
- Urgent and short term projects
- Costs of incomplete short term projects
- Longer term projects

- D0 DB Taking Stock

- Nov  1, 2002

## Purpose

_**Store**_
- all global triggerlists used online in Run 2
- benchmarch triggerlists for simulation
_**Generate**_:
- precise programming for trigger configuration, determining which events are recorded and which are thrown away.
- ONLINE
- SIMULATION
- The configuration format: ‘xml’, Extensible Markup Language (XML) universal format for structured docs and data on the web
- The trigger ‘xml’ does not contain all the information stored in the trigger database, specifically wrt versioning, how one trigger list relates to another triggerlist,  or descriptions.
_**Report**_
- trigger configuration settings
- for use by offline analysis programs
- Et thresholds, eta ranges ...
- to the collaboration (web), with some documentation features
- not intended as a substitute for trigger subsystem documentation !** **

- D0 DB Taking Stock

- Nov  1, 2002

## Implementation

- 41 Tables and 33 Views
- IN USE since December 2001
- Small but Complex
- not large by database standards, but implementation is complex
- Complexity reflects that of the D0 Trigger System, which is designed to be programmable at run time
- Three levels of decision making
- Level 1 - hardware, firmware
- From many L1 detector subsystems
- Level 2 - firmware, software
- Level 3 - software
- Nearly 25000 records
- All data is entered by people
- trigger lists are a unique combination of conditions which are designed individually to configure a complex system
- User interfaces – take time to implement
- Nearly no duplicate records
- Once a trigger list element is created, other trigger lists use it

- D0 DB Taking Stock

- Nov  1, 2002

## Interfaces

**http://www-d0.fnal.gov/trigger_meister/trigdb/**

_**Interfaces**_

- D0 DB Taking Stock

- Nov  1, 2002

## Short Term To Do List

**Note:  Ignoring minor problems**
**in existing interfaces**
**Note:  All items on this Short Term List **
**Design is complete, just awaiting implementation or completion**
**General Support Issues (rely upon support)**
**DAN changes (JohnWeigand and Jeremy Simmons)**
**Propagation of ‘Current’ Status flags**
**Views need tuning (very slow)**
**Secure Web Server**
**Server**
**Reorganize Makefiles for server**
**Double check StatUsed flags before delete/update**
**Checks in server lacking before db inserts**
**Duplicate methods were created due to rushed implementation of Streaming**
**Xml Generator – **
**Maintanance, Upgrades**
**Most recently, changes for streaming**
**Upcoming, changes for L2 preprocessors**

- D0 DB Taking Stock

- Nov  1, 2002

## Short Term To Do List

**Entry Client**
**Triggerlist Transformation – partial implementation**
**Allows replacement of elements at the lowest level**
**Modifications needed for Streaming**
**Rushed – implementation only in one interface (but other interfaces would overwrite that information)**
**Status Interface – add record selection**
**1/10****th**** implementation by Adam for Streaming by trigger or trigger list**
**L1 Dialogs (L1 Cal programming)**
**Started by Jeremy in August 2001**
**User interfaces are time consuming**
**L2 Preprocessor programming**
**Reporting Client**
**Dependency report**
**Needed to check statCurr propigation and Triggerlist Transformation Entry Client**
**Neoterms report does not exist**
**Streams need to be added to reports**
**Tying trigger lists to Releases**
**New db tables, server and client methods**
**Add release information to reports**

- D0 DB Taking Stock

- Nov  1, 2002

## Cost of Short Term To Do List

**Data entered by hand client interfaces dne**
**Data entered into production using sqlplus or sqlldr **
**Data entered by the only person writing the code**
**Data Integrity checks bypassed**
**Examples:**
**L1 Dialogs (Calorimeter programming)**
**Crates and Crate List Groups**
**L2 Preprocessors**
**Time wasted due to erroneous entry**
**StatCurr propagation not working yet**
**Unable to make needed changes quickly**
**Global_CMT-9.00 – forced to remove triggers because L3 failed to report p12 changes in time**
**Changes could not be made in time because transformation tool is not complete**
**L3 has not switched to making release objects in the database because release/db system incomplete**
**Required reports – hamper data entry, retrieval**
**Do not exist**
**Neoterms**
**Streaming**
**Not completely functional**
**Dependency**
**Correlation between objects**

- D0 DB Taking Stock

- Nov  1, 2002

## Mid to Long Term To Do List

**Entry and Report Client**
**Implement short and long format reports**
**Enable searches by date, user**
**Methods for displaying differences between trigger elements**
**MISWEB Client**
**Update as Run Summary Database**
**Implementation of Rules checking**
**Online downloads directly from DB**
**Help / Documentation**
**New methods:**
**L1 Simulation to Firmware mapping**
**L1 Board and Board Component registry**

- D0 DB Taking Stock

- Nov  1, 2002