Structural changes to Persisted Memory tags (such as modifying the array size) cannot be applied while any I/O server hosting that device is still running. A brief coordinated stop of all I/O servers is the required procedure.
When an I/O server starts, it synchronizes its Persisted Memory device state from any running peer. This synchronization includes both the tag values and the tag structure (array size, data type). As long as at least one server is running with the old structure in its cache, that structure will be propagated to any restarting server regardless of what the project definition says.
This is a deliberate design choice to protect runtime data integrity: the system prioritizes the live running state over the project definition to prevent accidental data loss from project changes.
Recommended procedure for structural changes:
To apply structural changes (such as increasing an array size) with minimal downtime:
Prepare the new project in advance (compile, verify).
Deploy/restore the new project to ALL servers without restarting any.
Coordinate a brief maintenance window.
Stop ALL I/O servers simultaneously.
Restart the I/O servers.
The downtime required is only the duration of the restart cycle itself.
|
Idea business value
In a redundant SCADA system that must be highly available, downtime of the redundant servers is unacceptable. Therefore, it must be possible to make changes without causing downtime. |
|
| Idea priority | 4 – Important to my company |