Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"EOF" is not handled gracefully by LcioEvent and the MarlinProcessorWrapper combination #36

Closed
tmadlener opened this issue Aug 5, 2021 · 0 comments · Fixed by #42
Closed

Comments

@tmadlener
Copy link
Contributor

Currently the LcioEventAlgo does not handle the following two cases gracefully:

  • Specifying to run over a number of events in the options file (or via --num-events) that is larger than the number of events in the input file.
  • Specifying to run over all events via --num-events=-1 (or EvtMax = -1 in the options file)

The underlying reason for both problems is probably the same. When the input file is exhausted LcioEventAlgo::execute returns StatusCode::FAILURE but the event processing will continue. Since the LcioEventAlgo didn't register an LCEvent with the event service the MarlinProcessorWrapper will create a new but empty LCEvent and register that with the event service. That empty event will then break at some point in the chain of wrapped Marlin processors, where the first processor does not gracefully handle missing collections in the event.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant