Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash in NevisTPCUtilities decode_data method when corrupt data come up #120

Open
tomjunk opened this issue Feb 7, 2025 · 1 comment
Open

Comments

@tomjunk
Copy link
Contributor

tomjunk commented Feb 7, 2025

In Run 18101, corrupt data started coming up in the Nevis TPC fragments. invalid fragment handles in the artROOT files from the DAQ were plentiful, but sometimes data got as far as the decoder method in NevisTPCUtilities.cc. If a word comes up with type kADC or kADCHuffman before any kChannelHeader word is found, then the uninitialized currentWaveformPtr gets used to store waveform data for which no channel has been identified, causing a segfault.

@tomjunk
Copy link
Contributor Author

tomjunk commented Feb 7, 2025

More details on the crash.

gdb --args lar -c run_decoders_job.fcl root://fndca1.fnal.gov:1094//pnfs/fnal.gov/usr/sbnd/archive/sbn/sbn_nd/data/raw/unknown/v1_10_04/sbnd_daq_v1_10_04/daq/00/01/81/01/data_EventBuilder1_art1_run18101_1_strmUnknown_20250107T214345.root

Program received signal SIGSEGV, Segmentation fault.
sbndaq::NevisTPCDecoder::decode_data (this=this@entry=0x7ffffffdd0b0, data_ptr=, n_words=n_words@entry=40593, wvfm_map=...)
at /home/trj/saut/triggerdecoder/sbndc4/srcs/sbndaq_artdaq_core/sbndaq-artdaq-core/Overlays/SBND/NevisTPC/NevisTPCUtilities.cc:97
97 currentWaveformPtr->emplace_back( currentWaveformPtr->back() + differences[i_diff - 1] );

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant