Ticket #1934 (closed: fixed)

Opened 10 years ago

Last modified 5 years ago

LoadDetectorInfo is getting stuck

Reported by: Martyn Gigg Owned by: Martyn Gigg
Priority: critical Milestone: Iteration 26
Component: Mantid Keywords:
Cc: Blocked By:
Blocking: Tester: Janik Zikovsky

Description

Changes in the way parameter maps are handled with parametrized components has affected the LoadDetectorInfo algorithm.

Parametrized components used to hold references to the ParameterMap and therefore creating one didn't affect the use count of the shared_ptr to the ParamMap in the workspace.

They now take a copy of the shared pointer and therefore update the use_count so that trying to access the instrumentParameters repeatedly causes a copy every time.

This needs to go back to references so that the only time it is copied is when a workspace copies and changes it.

Change History

comment:1 Changed 10 years ago by Martyn Gigg

(In [7524]) Revert parametrized components to store a simple pointer to the parameter map to avoid excessive copying when the workspace copy mutates in an algorithm such as LoadDetectorInfo. Alog with this the excitations conversion script has been fixed so that it works with ISIS instruments. Also cleared a few warnings about no newlines. Re #1934

comment:2 Changed 10 years ago by Russell Taylor

(In [7551]) Changes in [7542] turned out to be a bad idea for some reason (and I forgot to run the Algorithm tests to discover this sooner). Re #1934.

comment:3 Changed 10 years ago by Martyn Gigg

  • Status changed from new to accepted

comment:4 Changed 10 years ago by Martyn Gigg

  • Status changed from accepted to verify
  • Resolution set to fixed

comment:5 Changed 10 years ago by Janik Zikovsky

  • Status changed from verify to verifying
  • Tester set to Janik Zikovsky

comment:6 Changed 10 years ago by Janik Zikovsky

(In [8134]) Refs #1934.

comment:7 Changed 10 years ago by Janik Zikovsky

  • Status changed from verifying to closed

comment:8 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 2781

Note: See TracTickets for help on using tickets.