ISISComputingGroup / ISISComputingGroup/IBEX

Script Generator: Concurrent script execution

Open
#6,927 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
No language data
Stars
6
Forks
2
Avg merge
16h 40m
Merged PRs (30d)
2

Description

As a user of dynamic scripting in the script generator, I would like the script generator to accurately reflect the state of the script server. At the moment, the script generator does not handle scripts being queued to the script server while dynamic scripting is in progress.

To reproduce:
1. Queue two actions (let's call them `a1` ... `a2`) in the script generator (make sure they do not finish immediately, e.g. add some sleeps in the script definition)
2. Go to the script server view and queue another script (let's call it `b`) while `a1` is executing
3.
1. If script `b` finishes instantaneously, the script generator execution stops. (`a2` is not executed)
2. If script `b` takes some time to run (>1s), this breaks the script generator perspective: it continually shows `a1` as running; Run, Pause, Stop buttons are broken. (Requires client restart to fix)

### Acceptance Criteria
_What is the acceptance criteria?_
- [ ] The script generator recognizes when a script from an outside source gets run in the script server and reflects this to the user in the view
- [ ] When external scripts have finished executing, the script generator resumes by queuing the next action in the table
- [ ] The script generator should recoginze if the last executed action has been reordered. e.g. given:
- actions `a1`, `a2` in the table
- `b` is queued externally while `a2` is executing
- `a2` is reordered to before `a1` while `b` is executing
- the sequence of execution should be `a2` > `b` > `a1`

### Extra Information
_Why it is needed?_
Required for running scripts in
Required for https://github.com/ISISComputingGroup/IBEX/issues/6673

## How to Test
_verbose instructions for reviewer to test changes
(**Add before making a PR**)_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.