JeffersonLab / hps-java

HPS reconstruction and analysis framework in Java
2 stars 10 forks source link

Error in reconstruction when running session after disconnecting and re-connecting #512

Closed JeremyMcCormick closed 5 years ago

JeremyMcCormick commented 5 years ago

Reported by @mholtrop but I have seen this problem as well. It is not specific to the ET ring as it occurred when using an EVIO file source.

If you disconnect from the ET ring and then reconnect to the ET ring, you get the error:

Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication setupLoop
CONFIG: added extra processor EventDashboardUpdater
Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication setupLoop
CONFIG: added EvioDetectorConditionsProcessor to job with detector HPS-PhysicsRun2019-beta1-4pt5
Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication setupLoop
CONFIG: Record loop is setup.
Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication setupSystemStatusMonitor
INFO: system status monitor initialized successfully
Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication start
FINE: event processing threads are starting
Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication start
FINE: started event processing threads
Mon Jun 17 10:54:55 EDT 2019 MonitoringApplication startSession
INFO: Event processing session started.
Jun 17, 2019 10:54:55 AM org.hps.evio.EcalEvioReader makeHits
INFO: ECal format tag: 0xe101

Jun 17, 2019 10:54:55 AM org.hps.evio.LCSimEngRunEventBuilder makeLCSimEvent
SEVERE: Error making ECal hits.
java.lang.NullPointerException
at org.hps.evio.EcalEvioReader.daqToGeometryId(EcalEvioReader.java:282)
at org.hps.evio.EcalEvioReader.makeWindowHits(EcalEvioReader.java:251)
at org.hps.evio.EcalEvioReader.makeHits(EcalEvioReader.java:134)
at org.hps.evio.LCSimEngRunEventBuilder.makeLCSimEvent(LCSimEngRunEventBuilder.java:164)
at org.hps.record.composite.LcioEventAdapter.recordSupplied(LcioEventAdapter.java:103)
at org.freehep.record.loop.DefaultRecordLoop.consumeRecord(DefaultRecordLoop.java:832)
at org.freehep.record.loop.DefaultRecordLoop.loop(DefaultRecordLoop.java:668)
at org.freehep.record.loop.DefaultRecordLoop.execute(DefaultRecordLoop.java:566)
at org.hps.record.composite.CompositeLoop.loop(CompositeLoop.java:208)
at org.hps.record.composite.EventProcessingThread.run(EventProcessingThread.java:66)

I think it could be a conditions initialization issue, as the daqToGeometryId method uses conditions objects like the ECal subdetector.

JeremyMcCormick commented 5 years ago

Should be resolved now.