Sie sind auf Seite 1von 3

Online File Download System

Cosmic run configuration relied on NFS file access


Hard-coded configuration key values Private files, file formats

BaBar online has a design for data download


Objectivity
config conditions persistent objects

Download Server
proxy proxy proxy proxy

Tagged Containers

Reverse Dataflow
requests requests type,name, (key,time), odfdAdr

End Users

We arent ready to deploy the real system today


RDF is not ready Persistent form of config data, Proxies not yet written by subsystems

We need (some of) this functionality to run in April


Documented, dynamic, data-driven configuration download
Babar Online Meeting, February 3 1999 David Brown, LBL

The Interim Download System


Uses NFS file access as a transport mechanism
Can reuse existing data files (if written in XTC format) NFS file access is working acceptably (new server,single NFS mount)

Provides true configuration key management


Key values are uniquely associated with config data

Provides access to conditions DB data (calibration) Provides realistic coding interfaces


Real Server interface implementation
Can be used as-is underneath rdf once thats deployed

Real Dataflow interfaces for config and calibration data


will need some modification when rdf is deployed

Exploits the real Config DB browser/editor tools Allows integration of DF and DC configure transition by RC Can be updated adiabatically as data is entered in Config DB

Babar Online Meeting, February 3 1999

David Brown, LBL

How It Works
Data files must be placed on the server
/nfs/bbr-srv02/dataflow/rdf/Xxx/YourDirectory/YourFile.xtc Subsystem experts have write access to Xxx Files MUST have odfContainerIO::writeXTC() format
Existing CycleTC files are probably the wrong format (odfContainerIO::writeArena() format) 7.11.1 OdfContainerTools contains an executable for converting file formats

File names are completely arbitrary

Config files must be registered in the config DB (stay for Yury)


Associates a file with an config transition env value Once registered, files may not be modified (checksum validation)

Conditions data must also be registered At run-time, an index of files is created from the DB(Yury) Accessors (next slide) will find the right file given the request

Babar Online Meeting, February 3 1999

David Brown, LBL

User Interface
Defined in RdfOdf package
Also need RdfCommon, RdfTools, + calibration libraries RDF Libraries are in /dataflow/rdflib

Data is proxied by an instance of RdfLoader


RdfLoader owns/manages the data it fetches Can (should) be data members of odfAction subclass

RdfConfigLoader<YourData> subclass
Fully implemented Instantiate with the config data name Fetch data with YourData* getXTC(odfTransition)

CalTCLoader<YourCC> subclass
Fully implemented Instantiate with CalType name Fetch data with CalTC<YourCC>* getCalTC(odfTransition)

Currently, only supports data fetching on configure


A fix for other transitions is upcoming
Babar Online Meeting, February 3 1999 David Brown, LBL

Core Calibration Changes


CalConfigAction now uses RdfLoader for CalCycleTCs
Default name CalCycles can (should) be overridden on construction

CalConfigAction::globalConfig and CalBeginAction::cycleConfig prototype has changed


was (odfEnv,odfFSM); now (odfTransition,odfFSM) Need transition to pass to RdfLoader
checks transition value gets time for conditions DB access

CalCycleManager (DF Proxy) uses RdfLoader Dirc example (fully tested) in recently announced tag
DrcCalConfig uses RdfConfigLoader to fetch front-end configuration data

Babar Online Meeting, February 3 1999

David Brown, LBL

Migration and Deployment


All the dual-use + DB code was announced for 7.11.1 An online release will be built on this this weekend George Zioulas will install an IR2 Objectivity federation based on 7.11.1 schema Subsystems need to migrate their CalBeginActions Subsystems need to migrate their data files Subsystems need to register their files RC must migrate Top keys (+ aliases?) need to be defined for all run types

Babar Online Meeting, February 3 1999

David Brown, LBL