J. Gutleber, L. Orsini, 2005 March 15

Slides:



Advertisements
Similar presentations
Threads, SMP, and Microkernels
Advertisements

© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Addressing the Network – IPv4 Network Fundamentals – Chapter 6.
CS 443 Advanced OS Fabián E. Bustamante, Spring 2005 Resource Containers: A new Facility for Resource Management in Server Systems G. Banga, P. Druschel,
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
CSI 3120, Exception handling, page 1 Exception and Event Handling Credits Robert W. Sebesta, Concepts of Programming Languages, 8 th ed., 2007 Dr. Nathalie.
Model for Supporting High Integrity and Fault Tolerance Brian Dobbing, Aonix Europe Ltd Chief Technical Consultant.
Computer Systems/Operating Systems - Class 8
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
1 I/O Management in Representative Operating Systems.
.NET Mobile Application Development Remote Procedure Call.
1 Exception and Event Handling (Based on:Concepts of Programming Languages, 8 th edition, by Robert W. Sebesta, 2007)
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Addressing the Network – IPv4 Network Fundamentals – Chapter 6.
THE NEXT STEP IN WEB SERVICES By Francisco Curbera,… Memtimin MAHMUT 2012.
Interoperability Tests for IEC Scott Neumann November 12, 2009.
1 Operating System Overview Chapter 2 Advanced Operating System.
Introducing Axis2 Eran Chinthaka. Agenda  Introduction and Motivation  The “big picture”  Key Features of Axis2 High Performance XML Processing Model.
D.S.I. Venezia L.N.L CMS Error Handling in RCMS An Overview Francesco Lelli
Boosting Event Building Performance Using Infiniband FDR for CMS Upgrade Andrew Forrest – CERN (PH/CMD) Technology and Instrumentation in Particle Physics.
Web Services Description Language CS409 Application Services Even Semester 2007.
Architecting Web Services Unit – II – PART - III.
Abierman-nanog-30may03 1 XML Router Configs BOF Operator Involvement Andy Bierman
Towards a Homogeneous Software Environment for DAQ Applications Luciano Orsini Johannes Gutleber CERN EP/CMD.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Web Services. Abstract  Web Services is a technology applicable for computationally distributed problems, including access to large databases What other.
7. CBM collaboration meetingXDAQ evaluation - J.Adamczewski1.
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
08/04/05 OFF-Detector Workshop Electronics R. Alemany (LIP) Session: Software Architecture 1 ECAL Trigger and Readout Software architecture/integration.
Kemal Baykal Rasim Ismayilov
System Components ● There are three main protected modules of the System  The Hardware Abstraction Layer ● A virtual machine to configure all devices.
The Mach System Silberschatz et al Presented By Anjana Venkat.
CMS Luigi Zangrando, Cern, 16/4/ Run Control Prototype Status M. Gulmini, M. Gaetano, N. Toniolo, S. Ventura, L. Zangrando INFN – Laboratori Nazionali.
Netconf Event Notifications IETF 66 Sharon Chisholm Hector Trevino
Operating Systems Unit 2: – Process Context switch Interrupt Interprocess communication – Thread Thread models Operating Systems.
Copyright © 2004, Keith D Swenson, All Rights Reserved. OASIS Asynchronous Service Access Protocol (ASAP) Tutorial Overview, OASIS ASAP TC May 4, 2004.
CMS Luigi Zangrando, Cern, 16/4/ Run Control Prototype Status M. Gulmini, M. Gaetano, N. Toniolo, S. Ventura, L. Zangrando INFN – Laboratori Nazionali.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
Online Software November 10, 2009 Infrastructure Overview Luciano Orsini, Roland Moser Invited Talk at SuperB ETD-Online Status Review.
Distributed Web Systems Distributed Objects and Remote Method Invocation Lecturer Department University.
Introduction to Operating Systems Concepts
Deterministic Communication with SpaceWire
REAL-TIME OPERATING SYSTEMS
Module 12: I/O Systems I/O hardware Application I/O Interface
Course Outcomes of Object Oriented Modeling Design (17630,C604)
WEB SERVICES From Chapter 19 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
Architecting Web Services
Self Healing and Dynamic Construction Framework:
Architecting Web Services
NAT , Device Discovery Chapter 9 , chapter 10.
Sharon Chisholm Netconf Phase 2 Musing Sharon Chisholm
Storage Virtualization
#01 Client/Server Computing
Chapter 3: Windows7 Part 2.
Threads, SMP, and Microkernels
Chapter 3: Windows7 Part 2.
CS703 - Advanced Operating Systems
Time Gathering Systems Secure Data Collection for IBM System i Server
Starting Design: Logical Architecture and UML Package Diagrams
Lecture Topics: 11/1 General Operating System Concepts Processes
An Introduction to Software Architecture
Chapter 2: Operating-System Structures
Introduction to Operating Systems
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
WEB SERVICES From Chapter 19, Distributed Systems
Chapter 2: Operating-System Structures
Design.
Mr. M. D. Jamadar Assistant Professor
System Models Bina Ramamurthy 9/7/2019 B.Ramamurthy.
#01 Client/Server Computing
Presentation transcript:

J. Gutleber, L. Orsini, 2005 March 15 OLSWG Meeting J. Gutleber, L. Orsini, 2005 March 15 XDAQ Error Handling

Topics Exceptions in XDAQ Local Exceptions System WideError Handling Error Handling Contexts Error Handling Use Cases Uniform Error Message Format Programming Approaches Dealing with Errors in XDAQ Distributed Error Handling An Example XDAQ III Topical Meeting

Exceptions in XDAQ An error/exception is characterized by an identifier (What has happened) an originator (Who and where) a time (When) the context ( Who is in charge of handling) All exceptions are treated as software objects All exceptions types are defined and hierarchically organized e.g C++ class hierarchy Exceptions can be detected in a particular portion of code either the exception is handled and recovered locally or the exception must be notified to a external entity for handling finally an exception that cannot be handled is reported to the user Tools must be available for error detection error notification error reporting XDAQ III Topical Meeting

Local Exceptions reported exceptions method exceptions layer 3 reported exceptions layer 2 method exceptions layer 1 layer 0 handled exceptions XDAQ III Topical Meeting

System Wide Error Handling System Sub-System layers W E D F A C B Applications and Error Handlers Report Lines XDAQ III Topical Meeting

Errors Handling Contexts Context A e.g. Incomplete event Error handling intelligence e.g. re-start event building Context B e.g. Could not send event fragment Context C e.g Network send failure One or more error handlers for each context An error can be treated by a handler or is forwarded to a super-context A program always reports into a single context A program can switch the reporting contexts at run-time Contexts are assigned by static or run-time configuration XDAQ III Topical Meeting

Error Handling Use Cases Single thread (synchronous) Different threads (asynchronous) Different processes (synchronous) (asynchronous) XDAQ III Topical Meeting

Uniform Error Message Format An error schema was defined together with Michele, Alex Schema can be mapped to SOAP and other data formats initial implementation for SOAP will follow implementation binary I2O (performance) combined use of different transports This is the proposed format to be used for exchange error messages among CMS subsystems supports integration of Magnet Test XDAQ III Topical Meeting

Content Definition General error information Compulsory information Identifier (URI detailed format TBD) Notifier (originator of the error, detailed format TBD) Date/Time Context Optional Information Severity Message (open format) Recursive definition for nested errors Multiple error collections Support for qualified error (user defined schema) Possibility to plug a user defined errors. E.g Tracker, ECAL, RC, XDAQ etc. Capability to use other industry standard formats e.g CBE by IBM XML format definition http://xdaq.web.cern.ch/xdaq/xsd/2005/ErrorNotification-11.xsd other formats possible e.g. binary I2O format XDAQ III Topical Meeting

Notification Schema XDAQ III Topical Meeting

Programming Approaches Single Thread, Synchronous try { … } catch() { … } clauses Multi-Thread, Asynchronous Error processor and callback pattern Multi-Process, Synchronous SOAP call with Fault reply Multi-Process (distributed), Asynchronous Error notification message XDAQ III Topical Meeting

Dealing with Errors in XDAQ Error are defined as C++ classes in a hierarchy All errors inherit from xcept::Exception E.g. class MyException: public xcept::Exception {} Well defined interface Stack history Each package provides a error repository packagename/exceptions E.g. toolbox/exception/OutOfMemory.h Have properties standard properties (line, module, message, id etc.) user definable properties ( system, time etc.) XDAQ III Topical Meeting

Distributed Error Handling Poor man’s solution SOAP according defined schema Protocol dependent XDAQ exceptions with SOAP serializer/deserializer for defined schema Extensible to other technologies Sentinel Pluggable XDAQ extension (application) Homogeneous use of XDAQ C++ exceptions Protocol independent SOAP/XML Binary I2O ( with network configurability) Static or Dynamic configuration use of XML extensibility use with auto discovery XDAQ III Topical Meeting

A Fault Tolerant EVB Example(I) Readout Units Builder Units XDAQ III Topical Meeting

A Fault tolerant EVB Example(II) Sentinel … /* notify error to interested handler */ sentinel->notify(ru::exception::OutOfSynch) “Event Builder Context” Error are reported to the specified context … /* call back with message containing error */ BU::onException(/* exception …*/) { if ( exception == “ru::exception::OutOfSynch”) // disable RUi // log error } XDAQ III Topical Meeting

Fault Tolerant EVB Example(III) Faulty Readout Unit is masked Event building process can continues with uncompleted events XDAQ III Topical Meeting

Supplemental information

Latest Releases FEDStreamer V1.0 (FED I2O Data Streamer) XDAQ interface to GIII based on E. Cano drivers (required bigphys) FRL headers support New data format interface (EVB compatible) SOAP and WEB interfaces Pheaps V1.0 (Physical Memory Heaps) new device drivers multiple memory chunks multiple processes memory allocation protection ready for general purpose physical allocation on 2.6 (no bigphys on 2.6) XDAQ full packaged V3.0.1 support release for FEDStreamer V1.0 and Pheaps V1.0 XDAQ III Topical Meeting