The Gaudi Framework  v31r0 (aeb156f0)
CFplusViewBug Namespace Reference

Variables

int evtslots = 1
 
int evtMax = 10
 
int cardinality = 1
 
int threads = 1
 
int viewsPerEvt = 2
 
 whiteboard = HiveWhiteBoard("EventDataSvc", EventSlots=evtslots)
 
 slimeventloopmgr
 
 scheduler = AvalancheSchedulerSvc(ThreadPoolSize=threads, OutputLevel=INFO)
 
 OutputLevel
 
 filter_alg = CPUCruncher("filter_alg")
 
 InvertDecision
 
 avgRuntime
 
 filter_alg2 = CPUCruncher("filter_alg2")
 
 view_make_alg = Test__ViewTester("view_make_alg")
 
 baseViewName
 
 viewNumber
 
 viewNodeName
 
 view_test_alg = CPUCruncher("view_test_alg")
 
 Cardinality
 
 view_test_node
 
 view_make_node
 
 hltStep
 
 EvtMax
 
 EvtSel
 
 ExtSvc
 
 EventLoop
 
 TopAlg
 
 MessageSvcType
 

Detailed Description

A deliberately badly-configured job to demonstrate a crash in
sub-event scheduling.

The ViewTester is an algorithm specifically designed to create sub-event
contexts, pass them to the scheduler, and report on the current context.

The re-use of filter_alg causes the CF to "skip over" filter_alg2
This would then cause sub-events to be scheduled, but with the
"ShortCircuit" property of the hltStep node set True, the event can
be deleted before the sub-events have completed, causing the crash.

There is now protection in AvalancheScheduler against this crash,
but note that re-using algs in this way is still expected to cause
surprising CF behaviour.

Variable Documentation

CFplusViewBug.avgRuntime

Definition at line 66 of file CFplusViewBug.py.

CFplusViewBug.baseViewName

Definition at line 73 of file CFplusViewBug.py.

int CFplusViewBug.cardinality = 1

Definition at line 27 of file CFplusViewBug.py.

CFplusViewBug.Cardinality

Definition at line 82 of file CFplusViewBug.py.

CFplusViewBug.EventLoop

Definition at line 112 of file CFplusViewBug.py.

int CFplusViewBug.evtMax = 10

Definition at line 26 of file CFplusViewBug.py.

CFplusViewBug.EvtMax

Definition at line 109 of file CFplusViewBug.py.

CFplusViewBug.EvtSel

Definition at line 110 of file CFplusViewBug.py.

int CFplusViewBug.evtslots = 1

Definition at line 25 of file CFplusViewBug.py.

CFplusViewBug.ExtSvc

Definition at line 111 of file CFplusViewBug.py.

CFplusViewBug.filter_alg = CPUCruncher("filter_alg")

Definition at line 64 of file CFplusViewBug.py.

CFplusViewBug.filter_alg2 = CPUCruncher("filter_alg2")

Definition at line 68 of file CFplusViewBug.py.

CFplusViewBug.hltStep
Initial value:
2  "hltStep",
3  Members=[filter_alg, filter_alg2, view_make_node],
4  Sequential=True,
5  ShortCircuit=True,
6  ModeOR=False,
7  OutputLevel=INFO)
Sequencer for executing several algorithms, stopping when one is faulty.

Definition at line 97 of file CFplusViewBug.py.

CFplusViewBug.InvertDecision

Definition at line 65 of file CFplusViewBug.py.

CFplusViewBug.MessageSvcType

Definition at line 114 of file CFplusViewBug.py.

CFplusViewBug.OutputLevel

Definition at line 60 of file CFplusViewBug.py.

CFplusViewBug.scheduler = AvalancheSchedulerSvc(ThreadPoolSize=threads, OutputLevel=INFO)

Definition at line 54 of file CFplusViewBug.py.

CFplusViewBug.slimeventloopmgr
Initial value:
2  SchedulerName="AvalancheSchedulerSvc", OutputLevel=INFO)

Definition at line 44 of file CFplusViewBug.py.

int CFplusViewBug.threads = 1

Definition at line 28 of file CFplusViewBug.py.

CFplusViewBug.TopAlg

Definition at line 113 of file CFplusViewBug.py.

CFplusViewBug.view_make_alg = Test__ViewTester("view_make_alg")

Definition at line 72 of file CFplusViewBug.py.

CFplusViewBug.view_make_node
Initial value:
2  "view_make_node",
3  Members=[filter_alg, view_make_alg, view_test_node],
4  Sequential=True,
5  OutputLevel=INFO)
Sequencer for executing several algorithms, stopping when one is faulty.

Definition at line 91 of file CFplusViewBug.py.

CFplusViewBug.view_test_alg = CPUCruncher("view_test_alg")

Definition at line 77 of file CFplusViewBug.py.

CFplusViewBug.view_test_node
Initial value:
2  "view_test_node",
3  Members=[view_test_alg],
4  Sequential=False,
5  OutputLevel=INFO)
Sequencer for executing several algorithms, stopping when one is faulty.

Definition at line 85 of file CFplusViewBug.py.

CFplusViewBug.viewNodeName

Definition at line 75 of file CFplusViewBug.py.

CFplusViewBug.viewNumber

Definition at line 74 of file CFplusViewBug.py.

int CFplusViewBug.viewsPerEvt = 2

Definition at line 29 of file CFplusViewBug.py.

CFplusViewBug.whiteboard = HiveWhiteBoard("EventDataSvc", EventSlots=evtslots)

Definition at line 36 of file CFplusViewBug.py.