-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Looking over the SockerWriterModule code, I'm noticing that m_raw_receiver_sleep_us never gets initialized. Indeed, if I print it out over a few different runs I'm seeing various random values (18 and 1416 both appeared more than once). One possible consequence of this is that we could hang inside the SocketWriterModule::run_consume function if std::this_thread::sleep_for(m_raw_receiver_sleep_us); is called and m_raw_receiver_sleep_us just happens to be very large.
I can't say for sure whether this will solve the hang originally considered to be caused by CRTGrenobleReaderModule when the stop-trigger-sources transition is sent and described in DUNE-DAQ/daqsystemtest#218 and DUNE-DAQ/crtmodules#10, but Kurt and I discovered that whenever the hang occurs, SocketWriterModule::run_consume isn't running to completion (i.e., Consumer thread joins... never prints out).