Skip to content
Snippets Groups Projects

Add ATLAS_CHECK_THREAD_SAFETY to InDetRegionSelector and MuonRegionSelector...

Merged Susumu Oda requested to merge oda/athena:master-IRegionIDLUT_Creator into master
  • In order to confirm and keep thread safety of InDetRegionSelector and MuonRegionSelector packages, ATLAS_CHECK_THREAD_SAFETY files were added.
  • Removed const from getLUT()
    • Returned pointer of getLUT() has to be non-const for disableRobList method execution in RegSelSvc.
    • If non-const pointer is returned, the method has to be non-const for thread safety.
  • Results should not be changed.
  • No JIRA ticket
Edited by Susumu Oda

Merge request reports

Pipeline #1724876 passed

Pipeline passed for 259898b3 on oda:master-IRegionIDLUT_Creator

Merged by Adam Edward BartonAdam Edward Barton 4 years ago (Jun 19, 2020 3:09pm UTC)

Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • This merge request affects 3 packages:

    • DetectorDescription/RegSelLUT
    • InnerDetector/InDetDetDescr/InDetRegionSelector
    • MuonSpectrometer/MuonDetDescr/MuonRegionSelector

    Adding @sutt ,@goetz ,@rosati ,@wleight ,@sroe ,@nkoehler ,@rbianchi as watchers

  • Susumu Oda changed the description

    changed the description

  • Hi, once again, why do people keep trying to modify the deprecated RegionSelectorTable classes ? These are obsolete, and should be removed.

    Instead of spending time modifying these obsolete classes, time would be better spent modifying the clients who currently use the old RegSelSvc to instead use the newer RegSelTool classes since as soon as the clients hav emoved over to use the new tools, we will simply be able to remove completely these old classes.

    Cheers Mark

    Edited by Mark Sutton
  • If we can remove old stuff, please remove it.

    I want to remove SCT_CablingToolInc, which is used by RegSelSvc only.

  • Hi @oda , @sroe ,

    this is the same issue we have in muons with the mdt cabling service where also the ‚old region selector‘ is the only remaining client. (cf my talk in today‘s SW plenary). I would recommend (as Mark) not to waste time here trying to make modifications to the old code. I would just wait with the deletion of your cabling tool until the region selector is fully migrated.

    Best, Nico

  • Indeed, if anyone wanted to help with the migration of the clients away from the RegSelSvc, this would be a better use of time than trying to modify the old code.

    Cheers Mark

  • I think this modification is safe. I already wasted my time. I was waiting more than one year before https://its.cern.ch/jira/browse/ATLASRECTS-4788

  • Susumu Oda changed the description

    changed the description

  • Hi, regarding the ATLASRECTS, if you want to use aligned detector elements in the lookup tables then this would need to be done from the detector manager, since the code which generates the lookup table gets the positions of all the detector elements from there, so that would be transparent to the RegionSelector code.

    In order to get fill the lookup tables, this has to wait until an IoV is definied, and in the old code this was done with a beginRun incident handler, but this has changes for MT, and now we use a conditions algorithm which gets called the first time the table is needed. In the serial athena in release 22, because of a lazy design, these conditions algorithms get called for every event.

    Whether we want to do this or not would really be up to the clients who use the Region Selector so this would need to be discussed with the trigger community. We would absolutely not want the geometry to change during the run.

    Regarding this specific change, since this code is obsolete anyhow, and will be removed eventually, there would be nothing wrong with including this change as such if it was already done, but really it might be better to leave it alone in the future just in case.

    Cheers Mark

  • :white_check_mark: CI Result SUCCESS (hash 259898b3)

    Athena AthSimulation AnalysisBase AthGeneration
    externals :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
    cmake :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
    make :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
    required tests :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
    optional tests :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:

    Full details available on this CI monitor view
    :white_check_mark: Athena: number of compilation errors 0, warnings 0
    :white_check_mark: AthSimulation: number of compilation errors 0, warnings 0
    :white_check_mark: AnalysisBase: number of compilation errors 0, warnings 0
    :white_check_mark: AthGeneration: number of compilation errors 0, warnings 0
    :pencil: For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 15648]

  • I noticed most of clients still uses IRegSelSvc. Some of them unnecessarily include IRegSelSvc.h. Remove it by !33866 (merged)

  • Susumu Oda changed the description

    changed the description

  • mentioned in commit dc64c324

Please register or sign in to reply
Loading