Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix regular live data crashes on OFFSPEC #36935

Conversation

rbauststfc
Copy link
Contributor

Description of work

Summary of work

When live data is run for the OFFSPEC instrument from the ISIS Reflectometry GUI there seem to be regular crashes. In ReflectometryReductionLiveData we were supporting instruments using different Controls systems by looking up different values for OFFSPEC. OFFSPEC have recently switched to IBEX, so we can now look up their values the same way as for other instruments. This reduces the number of errors that are logged and, from testing on IDAaaS, it appears to improve the stability of live data on OFFSPEC.

I am marking this PR as fixing the linked issue as I don't think there are any reproducible problems left on that ticket now.

Fixes #35400.

To test:

I have tested with Conda packages on IDAaaS because checking the impact on stability requires running it for some time while the beam is on. I ran live data for OFFSPEC in the Nightly alongside running it from the Conda packages and found that in just under 24 hours the Nightly version crashed twice while the Conda packages didn't crash at all. I wouldn't suggest that this be repeated when testing this PR, but the following will ensure that live data is still working OK. I can't seem to run live data on my machine when not plugged into the network on site so I can give installation details for the Conda packages, or share an IDAaaS workspace, if anyone needs to test there instead.

  1. Open the ISIS Reflectometry interface.
  2. On the Runs tab, change the instrument to OFFSPEC.
  3. In the Live Data section on this tab, click the Start monitor button.
  4. Check that in the log messages pane you get something like:
THETA = ...
S1VG = ...
S2VG = ...

Rather than the below errors, which you would have seen in the past when trying to read the s1v and s2v values for OFFSPEC:

Error in execution of algorithm GetLiveInstrumentValue:
Error reading EPICS PV "IN:OFFSPEC:CS:SB:s1vgap":
  1. Repeat the above for INTER to check that live data is still working OK for other instruments.

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

  • Is the code of an acceptable quality?
  • Does the code conform to the coding standards?
  • Are the unit tests small and test the class in isolation?
  • If there is GUI work does it follow the GUI standards?
  • If there are changes in the release notes then do they describe the changes appropriately?
  • Do the release notes conform to the release notes guide?

Functional Tests

  • Do changes function as described? Add comments below that describe the tests performed?
  • Do the changes handle unexpected situations, e.g. bad input?
  • Has the relevant (user and developer) documentation been added/updated?

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.

@rbauststfc rbauststfc added Reflectometry Issues and pull requests related to reflectometry ISIS Team: LSS Issue and pull requests managed by the LSS subteam at ISIS labels Feb 28, 2024
@rbauststfc rbauststfc added this to the Release 6.10 milestone Feb 28, 2024
@rbauststfc rbauststfc force-pushed the 35400_fix_offspec_live_data_crashes branch from b59cce6 to faadbc5 Compare February 28, 2024 09:45
@rbauststfc rbauststfc force-pushed the 35400_fix_offspec_live_data_crashes branch from faadbc5 to a4ab2f1 Compare February 28, 2024 09:54
@rbauststfc rbauststfc marked this pull request as ready for review February 28, 2024 12:31
@cailafinn cailafinn self-assigned this Feb 28, 2024
Copy link
Contributor

@cailafinn cailafinn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM :shipit:

@SilkeSchomann SilkeSchomann merged commit b629275 into mantidproject:main Feb 28, 2024
9 checks passed
@rbauststfc rbauststfc added the Patch Candidate Urgent issues that must be included in a patch following a release label Mar 20, 2024
@rbauststfc rbauststfc deleted the 35400_fix_offspec_live_data_crashes branch April 24, 2024 14:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ISIS Team: LSS Issue and pull requests managed by the LSS subteam at ISIS Patch Candidate Urgent issues that must be included in a patch following a release Reflectometry Issues and pull requests related to reflectometry
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Crash while autoprocessing or running live data in ISIS Reflectometry GUI
3 participants