Ticket #11577 (closed: fixed)

Opened 5 years ago

Last modified 5 years ago

Crash in MantidPlot on "Clear All Memory" after running Python

Reported by: Martyn Gigg Owned by: Martyn Gigg
Priority: blocker Milestone: Release 3.4
Component: Framework Keywords:
Cc: Blocked By:
Blocking: Tester: Dan Nixon

Description

It can be reproduced by running

from reducer_singleton import ReductionSingleton
import isis_reducer

ReductionSingleton.clean(isis_reducer.ISISReducer)
ReductionSingleton().remove_settings()

and then selecting File->Clear All Memory.

Change History

comment:1 Changed 5 years ago by Martyn Gigg

  • Status changed from new to inprogress

Acquire Python GIL before clearing Mantid framework.

If any Python objects, such as algorithms or property managers are due to be cleared then the GIL needs to be held by the current thread or Python will crash on accessing the threadstate. Refs #11577

Changeset: 8cd1495e89eb9cbdb4fde8bbea360715b4ced5d7

comment:2 Changed 5 years ago by Martyn Gigg

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

This is being verified as pull request #599.

comment:3 Changed 5 years ago by Dan Nixon

  • Status changed from verify to verifying
  • Tester set to Dan Nixon

comment:4 Changed 5 years ago by Dan Nixon

  • Status changed from verifying to closed

Merge pull request #599 from mantidproject/11577_fix_clear_all_memory_crash

Fix crash on "Clear All Memory"/shutdown in MantidPlot

Full changeset: 204af4fd21683ecdb2ad39bb1c915cb6c04ca0d1

comment:5 Changed 5 years ago by Nick Draper

Somehow these slipped through without a resolution. Set to Fixed.

comment:6 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 12415

Note: See TracTickets for help on using tickets.