-
Key: DDSIRTP26-9
-
Status: open Implementation work Blocked
-
Source: ZettaScale Technology ( Mr. Erik Hendriks)
-
Summary:
The RTPS V2.5 spec explains how to implement the Group ordering/coherency feature in section 8.7.5 and 8.7.6. In these sections it is explained that the scope of the coherent update (i.e. which coherent Writers the coherent Publishers contains) is communicated by means of the GroupDigest, which is the first part of an MD5 hash of an ordered list of CDR encoded EntityIDs of those Writers.
In order for the Subscribing side to validate whether all relevant Writers have successfully been discovered, it will create a digest from all EntityIDs of the writers discovered so far, and then compare that to the Digest received from the publisher. Only when the two digests are identical you know that you have successfully discovered all participating Writers.
Problem for this is that you need to know which Writers belong to which Publisher: you can't just calculate a digest over all discovered Writers because not all discovered Writers might be part of the same group coherent Publisher.
That means I need to to know the GROUP_GUID or at the very least the GROUP_ENTITY_ID of the Publisher of a Writer in order for me to determine which discovered Writer to include in the digest I calculate to do the comparison.
However, it is not clear from the spec how this GROUP_GUID or this GROUP_ENTITY_ID is communicated from the publishing side to the subscribing side. The spec introduces a separate PID for both the GROUP_GUID and and the GROUP_ENTITY_ID, but nowhere does it say which one to send out from the Publisher side, or to which message to attach this information. This information is necessary however in order to build an interoperable group coherent implementation.
-
Reported: DDSI-RTPS 2.5 — Wed, 12 Jan 2022 16:02 GMT
-
Updated: Wed, 12 Jan 2022 16:02 GMT
DDSIRTP26 — Unclear how to discover GROUP_GUID/GROUP_ENTITY_ID from a coherent Publisher
- Key: DDSIRTP26-9
- OMG Task Force: DDSI-RTPS 2.6 RTF