View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0005837 | 10000-005: Information Model | Spec | public | 2020-07-28 14:40 | 2021-04-21 08:38 |
| Reporter | Jeff Harding | Assigned To | Jeff Harding | ||
| Priority | normal | Severity | major | Reproducibility | have not tried |
| Status | closed | Resolution | fixed | ||
| Summary | 0005837: Create new service Read-Modify-Write (RMW) for integral values, arrays and fields in structs. | ||||
| Description | it is common to want to write to a part of a data item. Examples: This feature has been demanded by our customers, and explicit support was added with explicit services in our PLCs and in our communications stack. When this is not available the only other way to write a single value within a larger data item (e.g. bits within a word) is to first read the item, modify it, and write it back. This creates risk due to the time lag between when the value was read and when the modified value is written back - the part that was not supposed to be modified may be "stale" and no longer the correct value. The need for a builtin service increases as the size in bytes of the item(s) increases because it takes longer to read it and write it back, raising the risk of writing "stale" data to the server, plus the comms + app layers are not real-time so cannot guarantee a response within a deadline. Support for this to be optional so that servers that cannot guarantee RMW semantics are not forced to support it. This mode is already optionally supported for arrays: indexed writes. The desired goal is to extend this to other data items where it makes sense. Strawman proposal: Whether or not RMW is supported for a fundamental type to be defined; e.g. Arrays and structures Each supported type should be optional with its own conformance unit. e.g. all signed/unsigned integers is one unit, strings another, etc. Support for optional types to be reported in a server capability object. Possible priority: | ||||
| Tags | No tags attached. | ||||
| Commit Version | |||||
| Fix Due Date | |||||
| child of | 0005762 | closed | Jeff Harding | 10000-003: Address Space | Create new service Read-Modify-Write (RMW) for integral values, arrays and fields in structs. |
|
|
This issue represents the Part 5 aspects of the Part 3 change proposed by Issue 0005762 |
|
|
Added new ReferenceType HasStructureComponent |
|
|
Agreed to changes edited in Virtual F2F. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2020-07-28 14:40 | Jeff Harding | New Issue | |
| 2020-07-28 14:40 | Jeff Harding | Status | new => assigned |
| 2020-07-28 14:40 | Jeff Harding | Assigned To | => Jeff Harding |
| 2020-07-28 14:40 | Jeff Harding | Issue generated from: 0005762 | |
| 2020-07-28 14:40 | Jeff Harding | Relationship added | child of 0005762 |
| 2020-07-28 14:42 | Jeff Harding | Note Added: 0012631 | |
| 2020-07-28 14:42 | Jeff Harding | Project | 10000-003: Address Space => 10000-005: Information Model |
| 2020-07-28 14:50 | Jeff Harding | Status | assigned => resolved |
| 2020-07-28 14:50 | Jeff Harding | Resolution | open => fixed |
| 2020-07-28 14:50 | Jeff Harding | Fixed in Version | => 1.05 |
| 2020-07-28 14:50 | Jeff Harding | Note Added: 0012632 | |
| 2020-12-10 20:00 | Jim Luth | Status | resolved => closed |
| 2020-12-10 20:00 | Jim Luth | Note Added: 0013461 |