Branches created for dropped products
mu2e -c $FC -s $FN
runs without error to the end of the file (3000 events).
mu2e -n 10 -c $FC -s $FN
gives the error below after one event. The file was made by mixing (a typical setup, but
I can't be sure). The product is found by artProductsSizes, but
the size is anomalously small. If you need full instructions to reproduce it,
let me know.
%MSG-s ArtException: PostEndJob 22-Mar-2018 13:49:25 CDT ModuleEndJob
cet::exception caught in art
---- OtherArt BEGIN
---- LogicError BEGIN
A product with a status of 'present' is not actually present.
The branch name is mu2e::SimParticlemv_g4run__beamg4s4conversion.
Contact a framework developer.
---- LogicError END
---- OtherArt END
#3 Updated by Raymond Culbertson over 2 years ago
git clone ssh://firstname.lastname@example.org/cvs/projects/mu2eofflinesoftwaremu2eoffline/Offline.git
git checkout f9b4b8acdb
scons -j 20 &>b_00.log
- make the corrupt file
mu2e -n 10 -c Validation/fcl/ceMixDigi.fcl -o mix.art -s \
- demo error
mu2e -s mix.art -n 5 -c Validation/fcl/reco.fcl
#4 Updated by Kyle Knoepfel over 2 years ago
- Status changed from Feedback to Assigned
The problem is, to some extent understood. Whenever the
-n program is specified, if the number given is less than the total number of events in the input file, fast-cloning is deactivated. In that case, each product must be read from the input file, which triggered the above error. It is also clear that the product in question does not exist in the input file. Why it is being marked as
present is not yet understood.
#5 Updated by Kyle Knoepfel over 2 years ago
- Subject changed from using -n causes error to Branches created for dropped products
- Target version set to 2.11.00
- % Done changed from 0 to 90
The problem is understood. art's mechanisms for tracking dropped products is complicated, and because of this, it is easy for implementation errors to creep in. In this case, art 2.09 and later unintentionally created branches in the output file for some previously dropped products, creating an ambiguity for the framework.
A fix will be included for art 2.11.00--old files will not need to be regenerated.
Implemented with commit art:7275ed6.