Project

General

Profile

Bug #15123

sim::ParticleList::clear() does not clear the set of primary particles

Added by Steven Gardiner almost 3 years ago. Updated almost 3 years ago.

Status:
Resolved
Priority:
Normal
Start date:
01/12/2017
Due date:
% Done:

0%

Estimated time:
Spent time:
Duration:

Description

The sim::ParticleList class maintains a set of integers that holds the trackIDs of all the primary particles in an event. When sim::ParticleList::clear() is called, the other class members are cleared, but the set of primary particles is not:

void ParticleList::clear()
{
  for ( iterator i = m_particleList.begin(); i != m_particleList.end(); ++i ){
    delete (*i).second;
  }

  m_particleList.clear();
  m_archive.clear();
}

A call to m_primaries.clear() should be added to this function.


Related issues

Related to LArSoft - Bug #15049: Segfault on Backtracker and PhotonBackTracker with ProdMarley simulated events.Closed01/09/2017

History

#1 Updated by Steven Gardiner almost 3 years ago

This is the underlying cause of LArSoft issue #15049. Both the BackTracker and PhotonBackTracker services in LArSoft are unreliable as a result of this bug.

#2 Updated by Steven Gardiner almost 3 years ago

  • Related to Bug #15049: Segfault on Backtracker and PhotonBackTracker with ProdMarley simulated events. added

#3 Updated by Jason Stock almost 3 years ago

Proposed fix pushed to feature/JStock_15123Fix.

#4 Updated by Lynn Garren almost 3 years ago

  • Status changed from New to Resolved

This bug fix is in nutools 2.09.02



Also available in: Atom PDF