Fix crash from loading into Muon Analysis interface #38683
Merged
+1
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This simple change forces the ADS to check whether the workspace name i.e. load_result["DeadTimeTable"] actually exists. If it doesn't, it gives an error which is caught by the widget, instead of closing the widget and crashing mantid.
Not an ideal solution, but a quick and simple one.
Description of work
Previously a crash happened after trying to load data into the Muon Analysis interface whenever a file did not produce the "DeadTimeTable` workspace, which the interface assumes is always the case. The nexus file in question is an old one (from 2010), and I suspect that maybe at the time they did not or could not record this type of data.
Regardless, this file is loaded by
LoadMuonNexus v1
and I confirmed that indeed some files might not produce theDeadTimeTable
output and this is not a bug.So the issue is that Muon Analysis assumes all workspaces will output this table when in fact this might not be the case, which was crashing the interface.
The best solution would be to still open the interface and disable only the functunality that uses
DeadTimeTable
. This way useers would still have most of the functunality available. I checked and this would be quite simple, I think disabling an option in the combobox in one of the tabs would do it. However, this would still require messing around with the observers and connections between different tabs, and is not as self-contained as I would have hoped. So for the sake of the release, I think its better if we put in this quick fix now, and I can work out a better solution afterwards if necessary.Summary of work
As per issue #38210, the error is now caught by the widget and mantid no longer crashes.
Fixes #38210
To test:
Follow the instructions on the original issue, you should see an error window but the interface should remain open.
Reviewer
Please comment on the points listed below (full description).
Your comments will be used as part of the gatekeeper process, so please comment clearly on what you have checked during your review. If changes are made to the PR during the review process then your final comment will be the most important for gatekeepers. In this comment you should make it clear why any earlier review is still valid, or confirm that all requested changes have been addressed.
Code Review
Functional Tests
Does everything look good? Mark the review as Approve. A member of
@mantidproject/gatekeepers
will take care of it.Gatekeeper
If you need to request changes to a PR then please add a comment and set the review status to "Request changes". This will stop the PR from showing up in the list for other gatekeepers.