Project

General

Profile

Bug #10979

formatting bug in output of --debug-config

Added by Rob Kutschke almost 4 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Start date:
11/22/2015
Due date:
% Done:

100%

Estimated time:
2.00 h
Spent time:
Duration:

Description

I made a --debug-config file from one of the Mu2e fcl files that makes heavy use of @sequence:: and @table. There is a formatting bug in the output. The original error was found in Analyses/test/genReco.fcl . I have produced a stripped down version that is much shorter and still produces the bug.

Here is the command that will demonstrate the error:

mu2e -c Analyses/test/debug_config_bug.fcl --debug-config bug.fcl

In bug.fcl find the definition of gen_allpatrec_rec, which is shown below. The error is that after the first 10 module labels in the list, the comma that delimits module labels is missing.

   gen_allpatrec_reco: [
     "generate",
      "g4run",
      "protonTimeMap",
      "muonTimeMap",
      "MakeCaloReadoutHits",
      "MakeCaloCrystalHits",
      "makeSD",
      "makeSH",
      "FSHPreStereo",
      "MakeStereoHits",
      "FlagStrawHits" 
      "FlagBkgHits" 
      "TimePeakFinder" 
      "PosHelixFinder" 
      "TRFDownstreameMinus" 
   ]

To reproduce the bug, first setup a ups repository. Then:

git clone http://cdcvs.fnal.gov/projects/mu2eofflinesoftwaremu2eoffline/Offline.git
cd Offline
source setup.sh
mu2e -c Analyses/test/genReco.fcl --debug-config bug.fcl

You do need to build the Mu2e code in order to reproduce this bug.

Associated revisions

Revision b0ef6634 (diff)
Added by Kyle Knoepfel over 3 years ago

Implement fix for issue #10979

History

#1 Updated by Marc Paterno over 3 years ago

  • Status changed from New to Accepted

#2 Updated by Kyle Knoepfel over 3 years ago

  • Status changed from Accepted to Assigned
  • Assignee set to Kyle Knoepfel

#3 Updated by Kyle Knoepfel over 3 years ago

  • Project changed from art to fhicl-cpp
  • Estimated time set to 2.00 h

#4 Updated by Kyle Knoepfel over 3 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100

When rewriting the ParameterSet::to_indented_string implementation, I changed the sequence-element printout to rely on regex-pattern matching. To determine if a parameter is a sequence element it must have a key that ends with "\[\d+\]" (at least one indexed digit -- e.g. "seq[7]"). I omitted the '+' character so that elements with only one digit matched the pattern -- hence why you saw commas for the first 10 elements and none afterward.

This has been fixed and implemented with fhicl-cpp:b0ef663.

#5 Updated by Kyle Knoepfel over 3 years ago

  • Status changed from Resolved to Closed

#6 Updated by Kyle Knoepfel over 3 years ago

  • Target version set to 1.18.03


Also available in: Atom PDF