fix(flomni): avoid XRayEye GUI RPC timeouts #208

Closed
wyzula_j wants to merge 2 commits from fix/temp-xray-eye-timeout-fix into main
Owner

Description

Hotfix for XRayEye GUI/RPC timeouts during flOMNI alignment, rebased on top of fix/dap-recursion.

This keeps the DAP forwarding changes from fix/dap-recursion and adds the XRayEye async rpc device execution on top from gui:

  • Move potentially blocking BEC/device actions from GUI callbacks to a small background thread path.
  • Keep widget construction lighter by deferring live-view setup and Fit tab initialization.
  • Use cached/readback state for XRayEye submit instead of doing blocking reads from the Qt thread.
  • Fetch the current scan queue status when XRayEye is created, not only on later queue updates.
  • Disable the user-facing XRayEye toggle switches while the scan queue is busy, with a short delayed re-enable to avoid flicker.
  • Keep RPC/script calls functional while preventing manual toggle interaction from adding device instructions behind an active scan.

Additional Comments

This is still a beamline hotfix, not the final architecture. The background thread reduces immediate GUI/RPC timeout risk, but running device calls cannot be forcibly interrupted and shutdown only waits briefly for them. The proper long-term solution should come from the upcoming bec_widgets worker/thread infrastructure.

## Description Hotfix for XRayEye GUI/RPC timeouts during flOMNI alignment, rebased on top of `fix/dap-recursion`. This keeps the DAP forwarding changes from `fix/dap-recursion` and adds the XRayEye async rpc device execution on top from gui: - Move potentially blocking BEC/device actions from GUI callbacks to a small background thread path. - Keep widget construction lighter by deferring live-view setup and Fit tab initialization. - Use cached/readback state for XRayEye submit instead of doing blocking reads from the Qt thread. - Fetch the current scan queue status when XRayEye is created, not only on later queue updates. - Disable the user-facing XRayEye toggle switches while the scan queue is busy, with a short delayed re-enable to avoid flicker. - Keep RPC/script calls functional while preventing manual toggle interaction from adding device instructions behind an active scan. ## Additional Comments This is still a beamline hotfix, not the final architecture. The background thread reduces immediate GUI/RPC timeout risk, but running device calls cannot be forcibly interrupted and shutdown only waits briefly for them. The proper long-term solution should come from the upcoming `bec_widgets` worker/thread infrastructure.
wyzula_j self-assigned this 2026-05-17 21:29:16 +02:00
wyzula_j requested review from appel_c 2026-05-17 21:29:30 +02:00
wyzula_j requested review from holler 2026-05-17 21:29:30 +02:00
wyzula_j requested review from perl_d 2026-05-17 21:29:30 +02:00
wyzula_j requested review from wakonig_k 2026-05-17 21:29:30 +02:00
wyzula_j force-pushed fix/temp-xray-eye-timeout-fix from 9321ef4c8e to 81cf4fba4f 2026-05-19 14:14:42 +02:00 Compare
wyzula_j force-pushed fix/temp-xray-eye-timeout-fix from d8d7eed3a9 to fcc9df1cbf 2026-05-19 15:43:14 +02:00 Compare
wyzula_j force-pushed fix/temp-xray-eye-timeout-fix from fcc9df1cbf to 0f130aae37 2026-05-19 16:02:46 +02:00 Compare
wyzula_j added 6 commits 2026-05-21 10:23:15 +02:00
fix(x_ray_eye): disabled cleanup turn off the live mode
CI for csaxs_bec / test (pull_request) Successful in 1m30s
Read the Docs Deploy Trigger / trigger-rtd-webhook (push) Successful in 2s
CI for csaxs_bec / test (push) Successful in 1m36s
541c3829b1
fix(x_ray_eye): async device call execution
CI for csaxs_bec / test (pull_request) Successful in 1m30s
CI for csaxs_bec / test (push) Successful in 1m36s
5e6cda1bf2
wyzula_j force-pushed fix/temp-xray-eye-timeout-fix from 0f130aae37 to 5e6cda1bf2 2026-05-21 10:23:15 +02:00 Compare
wyzula_j added 1 commit 2026-05-21 10:35:41 +02:00
fix(x_ray_eye): remove camera shutdown during cleanup
CI for csaxs_bec / test (push) Successful in 1m30s
CI for csaxs_bec / test (pull_request) Successful in 1m29s
a072e300d9
Author
Owner

closed in favor of minimal fix here: #209

closed in favor of minimal fix here: https://gitea.psi.ch/bec/csaxs_bec/pulls/209
wyzula_j closed this pull request 2026-05-21 13:37:36 +02:00

Pull request closed

Please reopen this pull request to perform a merge.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bec/csaxs_bec#208