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

Need to persist information when restarting ASCEs #120

Open
acaproni opened this issue Sep 12, 2018 · 1 comment
Open

Need to persist information when restarting ASCEs #120

acaproni opened this issue Sep 12, 2018 · 1 comment

Comments

@acaproni
Copy link
Member

Actually the ASCEs are stateless: they produce the output depending on the inputs whose updated value is eventually provided by the plugins or ASCEs/DASUs that constantly send the last computed value to the BSDB. If a DASU is restarted, it will produce the output after receiving the values of all of its inputs.

While this mechanism works most of the times, there are situations that need something more.
One example is provided by the wind speed: when it passes 30m/s a visual inspection is required. The ASCE can easily remember the point in time when the speed passed the threshold and compare with the time of the last inspection. If the wind speed drops below the threshold AND the visual inspection has been done then the alarm will be cleared.

But what if the DASU is restarted when the speed drops below 30 and the visual inspection has not yet been done? The newly restarted DASU will not set the alarm because the speed is below 30 even if the visual inspection has not yet been done. For this kind of situations we would like to persist the information so that the newly restarted DASU can set the alarm properly. In this case the DASU/ASCE must save the time when the wind speed passed the threshold of 30m/s and the time of the last visual inspection.

Note that the saving of the state is needed only to support the restarting of ASCEs/DASUs/Supervisors whose values of the inputs depends on something that happened in the past and may not be true at the present. I.e. persisting of information is not necessary if Supervisors are not restarted.

@acaproni
Copy link
Member Author

Once implemented #167, the timestamps of the ACK and the timstamp when an alarm is set must also be persisted.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant