DUNE / ND_CAFMaker

Code for making CAFs from ND inputs (whether 2x2+MINERvA prototype or full ND simulation)
Apache License 2.0
1 stars 11 forks source link

Issue with pass-through truth #40

Closed sindhu-ku closed 11 months ago

sindhu-ku commented 11 months ago

There is an issue when not using GENIE files for truth-matching that needs to be looked into

Could not find a true interaction with ID <id> already in this StandardRecord, and you asked me not to make a new one
terminate called after throwing an instance of 'std::runtime_error
chenel commented 11 months ago

@sindhu-ku can you check if the change in #41 fixes this, and approve if so?

sindhu-ku commented 11 months ago

No, this doesn't seem to fix the issue..

chenel commented 11 months ago

Hmm. Could you run the cafmaker under gdb and get the stack trace where the exception is being thrown?

sindhu-ku commented 11 months ago
TruthMatcher FATAL: Could not find a true interaction with ID 3 already in this StandardRecord, and you asked me not to make a new one
terminate called after throwing an instance of 'std::runtime_error'
  what():  True interaction with interaction ID = 3 not found in this StandardRecord

Thread 1 "makeCAF" received signal SIGABRT, Aborted.
0x00007fffe73a7387 in raise () from /lib64/libc.so.6
(gdb) bt 100
#0  0x00007fffe73a7387 in raise () from /lib64/libc.so.6
#1  0x00007fffe73a8a78 in abort () from /lib64/libc.so.6
#2  0x00007fffe7f0e203 in __gnu_cxx::__verbose_terminate_handler () at ../../.././libstdc++-v3/libsupc++/vterminate.cc:95
#3  0x00007fffe7f19c76 in __cxxabiv1::__terminate (handler=<optimized out>) at ../../.././libstdc++-v3/libsupc++/eh_terminate.cc:48
#4  0x00007fffe7f19ce1 in std::terminate () at ../../.././libstdc++-v3/libsupc++/eh_terminate.cc:58
#5  0x00007fffe7f19f35 in __cxxabiv1::__cxa_throw (obj=obj@entry=0x44b5bb0, tinfo=0x7fffe82412a0 <typeinfo for std::runtime_error>, dest=0x7fffe7f2f140 <std::runtime_error::~runtime_error()>) at ../../.././libstdc++-v3/libsupc++/eh_throw.cc:95
#6  0x00007ffff7b91392 in cafmaker::TruthMatcher::GetTrueInteraction (this=this@entry=0x7fffffff24a0, sr=..., ixnID=3, createNew=createNew@entry=false) at /dune/app/users/skumara/CAF_Jul2023/ND_CAFMaker/src/truth/FillTruth.cxx:327
#7  0x00007ffff7bb4a89 in cafmaker::MLNDLArRecoBranchFiller::FillParticles (this=0x41912d0, particles=..., trueInxns=..., trueParticles=..., truthMatch=0x7fffffff24a0, sr=...) at /dune/app/users/skumara/CAF_Jul2023/ND_CAFMaker/src/reco/MLNDLArRecoBranchFiller.cxx:527
#8  0x00007ffff7bb752f in cafmaker::MLNDLArRecoBranchFiller::_FillRecoBranches (this=0x41912d0, trigger=..., sr=..., par=..., truthMatcher=0x7fffffff24a0) at /dune/app/users/skumara/CAF_Jul2023/ND_CAFMaker/src/reco/MLNDLArRecoBranchFiller.cxx:176
#9  0x000000000041c54b in cafmaker::IRecoBranchFiller::FillRecoBranches (truthMatcher=0x7fffffff24a0, par=..., sr=..., trigger=..., this=<optimized out>) at /dune/app/users/skumara/CAF_Jul2023/ND_CAFMaker/src/reco/IRecoBranchFiller.h:50
#10 loop (caf=..., par=..., ghepFilenames=..., recoFillers=...) at makeCAF.C:294
#11 0x0000000000418e2b in main (argc=<optimized out>, argv=<optimized out>) at makeCAF.C:325
chenel commented 11 months ago

Thanks. I think I've fixed it now (on the same branch in #41), if you don't mind having another look. (I tested it with one input file and it ran through without crashing, at least.)

sindhu-ku commented 11 months ago

That worked, yay!