Project

General

Profile

Feature #4916

Implement SelectRuns and SelectSubRuns

Added by Christopher Backhouse over 5 years ago. Updated over 1 year ago.

Status:
Feedback
Priority:
Normal
Assignee:
-
Category:
Event Loop
Target version:
-
Start date:
11/06/2013
Due date:
% Done:

0%

Estimated time:
Scope:
Internal
Experiment:
NOvA
SSI Package:
art
Duration:

Description

As options on RootOutput, with behaviour analogous to SelectEvents.

Spun off from Issue 4895


Related issues

Related to art - Support #4895: No way to filter runs/subruns out of output fileClosed2013-11-01

Related to art - Support #10545: Returning false from EDFilter::beginSubRun() does not skip the eventsClosed2015-10-15

History

#1 Updated by Christopher Green over 5 years ago

  • Category set to Event Loop
  • Status changed from New to Feedback
  • Experiment NOvA added
  • Experiment deleted (-)
  • SSI Package art added
  • SSI Package deleted ()
Would it be acceptable to offer explicit options to the RootOutput module to:
  • Omit subrun records for which no events have been written; and
  • Omit run records for which no subrun records have been written?

The more selectSubRuns and selectRuns options you suggest would be harder to implement, and open the possibility of a mis-configured job being able to write events with no run or subrun records into a file, which we believe would qualify currently as a corrupted (and therefore unreadable) file.

#2 Updated by Christopher Backhouse over 5 years ago

I'm not quite sure this works. I want to be able to have eg retain a subrun with products in it, but all of the constituent events filtered out (which is currently possible). And likewise with a run, which isn't currently possible.

A worse failure case I guess is that with my scheme one could try and cut out a subrun that had events still remaining in it. But presumably it should be possible to flag these as errors as soon as the module makes such an inconsistent determination.

You could make the action of Select[Sub]Runs dependent on this criterion that nothing from the lower level has been written. That seems like a good way to retain safety.

#3 Updated by Kyle Knoepfel about 4 years ago

  • Target version set to 521

#4 Updated by Christopher Backhouse over 3 years ago

I had a feeling this feature, or one similar to it, had been implemented, but I can't find any evidence in redmine.

I've run into the need for this again. I'm making skim files of a few events out of many hundreds of runs. I'd prefer my output file to be as minimal as possible, only consisting the runs that are actually needed to contain the events I select.

#5 Updated by Kyle Knoepfel over 3 years ago

Issue #4998 was implemented as a mitigation to the problem you have discussed. However, as you can tell from the status of this particular feature, it has not been implemented.

#6 Updated by Christopher Backhouse over 3 years ago

I'm not sure #4998 covers this case. That's for unconditional dropping of all events in a subrun or all subruns in a run. Here I want to be able to make the decision on a case-by-case basis at runtime.

#7 Updated by Christopher Green over 3 years ago

  • Related to Support #10545: Returning false from EDFilter::beginSubRun() does not skip the events added

#8 Updated by Kyle Knoepfel over 1 year ago

  • Target version deleted (521)


Also available in: Atom PDF