Skip to content

m_raw_receiver_sleep_us not initialized in SocketWriterModule #8

@jcfreeman2

Description

@jcfreeman2

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).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions