Bug #1230
example programme load_root_file.py fails to run in new release when not connected to the network
100%
Description
when running the load_root_file.py example the error messages below appear if the computer is not
connected to the network. The problem also occurs on the simulate_mice.py example even when the
geometry does not include the TOF. It also appears in the older version, although I am sure I have
run the older code on the train without this problem. Is this expected or is there a work round
PIPELINE: Get event, TRANSFORM, MERGE, OUTPUT, repeat
HINT: MAUS will process 1 event only at first...
WARNING : The first event is not a START_OF_RUN. Spill count and Event count not accurate.
MERGE: Setting up merger
TRANSFORM: Setting up transformer
Traceback (most recent call last):
File "/home/paul/research/maus/src/common_py/ErrorHandler.py", line 162, in HandleCppException
raise CppError(error_message)
ErrorHandler.CppError: Failed to parse argument TOF1 at GetCabling::get_cabling
Missing an end_of_run spill...
...creating one to flush the mergers!
Written 1 event(s) to file.
TRANSFORM: Shutting down transformer
MERGE: Shutting down merger
Written 1 event(s) to file.
INPUT: Shutting down inputer
Written 1 event(s) to file.
Written 1 event(s) to file.
OUTPUT: Shutting down outputer
Clearing Globals
Traceback (most recent call last):
File "/home/paul/research/maus/bin/analyze_data_offline.py", line 44, in <module>
run()
File "/home/paul/research/maus/bin/analyze_data_offline.py", line 41, in run
MAUS.Go(my_input, my_map, MAUS.ReducePyDoNothing(), MAUS.OutputCppRoot())
File "/home/paul/research/maus/src/common_py/Go.py", line 131, in init
self.get_job_footer())
File "/home/paul/research/maus/src/common_py/framework/single_thread.py", line 95, in execute
self.process_event(event)
File "/home/paul/research/maus/src/common_py/framework/single_thread.py", line 137, in process_event
self.start_of_run(current_run_number)
File "/home/paul/research/maus/src/common_py/framework/single_thread.py", line 158, in start_of_run
assert(birth True or birth None)
AssertionError
Loading ROOT file /home/paul/research/maus/tmp/example_load_root_file.root
Setting up data tree
Getting some data
Found spill number -1 in run number 0 DAQ event type physics_event
W
Updated by Rogers, Chris over 10 years ago
- Category set to bin(aries)
- Assignee set to Rogers, Chris
- Target version set to Future MAUS release
This is correct behaviour. The example needs to generate some sample data, and this requires a connection to the Configuration Dataabase to access e.g. TOF calibration.
We made a decision recently that integration tests, and by extension examples, are allowed to call the config DB and hence are expected to fail if the Config DB is not available (e.g. no network). I can add a comment to this effect to the example script.
Updated by Rogers, Chris over 10 years ago
By email
Chris,
Is there a work round to allow work while disconnected?
Paul
Updated by Rogers, Chris over 10 years ago
If you want to reconstruct data then, as a rule, you need to access the Config DB. This is part of the architecture of the system. If there is a strong use case for working while disconnected we can envisage caching e.g. calibrations, but that is not part of the plan right now. (Probably the config db is small enough that the best answer would be to set up a local mirror/cache for the whole thing - but that would require hassle for Antony who is already overworked).
If you want to do analysis on existing reconstructed data then network isn't necessary. E.g. from the load_root_file.py example, comment the line 35
generate_some_data(my_file_name)
and the rest should work.
Updated by Kyberd, Paul over 10 years ago
The fact that it is only the generation stage which cause the problem explains the original
comment that I had run the older version without a network. I did have a version which only
did the analysis stage and I must never have tried the generate stage while not connected.
Updated by Rogers, Chris over 10 years ago
Maybe - the TOF calibration is quite new (v0.4.2) so if you were running before this you may not have seen the effect. But increasingly we will need this stuff (geometry, tracker calibration, maybe EMR/KL calibration, fields, ...)
Updated by Rogers, Chris over 10 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
Added a comment noting this feature in r908
Updated by Rogers, Chris about 10 years ago
- Target version changed from Future MAUS release to MAUS-v0.5.1