-
Key: DDSIRTP2-25
-
Legacy Issue Number: 11053
-
Status: closed
-
Source: Real-Time Innovations ( Mr. Kenneth Brophy)
-
Summary:
Source:
Real-Time Innovations, Inc. (Ken Brophy, ken@rti.com)
Summary:
In order to implement the DDS DURABILITY Persistent QoS, a persistence-service needs to send the data that has been received and stored on behalf of the persistent writer.The service that forwards messages needs to indicate that the forwarded message belongs to the message-stream of another writer, such that if the reader receives the same messages from another source (for example, another forwarding service or the original writer), it can treat them as duplicates.
Resolution:
Introduce a new parameter Id, ORIGINAL_WRITER_INFO, that can appear in parameter lists.Revised Text:
Add to table 9.4:
Type PSM Mapping
{ GUID_t originalWriterGUID; SequenceNumber_t originalWriterSN; ParameterList originalWriterQos;}
OriginalWriterInfo_t structOriginalWriterInfo;
Append to table 9.13:
Name ID Type
PID_ORIGINAL_WRITER_INFO 0x0061 OriginalWriterInfo_tAdd new section:
8.7.6 Original Writer Info
A service supporting the Persistent level of DDS Durability QoS needs to send the data that has been received and stored on behalf of the persistent writer.
This service that forwards messages needs to indicate that the forwarded message belongs to the message-stream of another writer, such that if the reader receives the same messages from another source (for example, another forwarding service or the original writer), it can treat them as duplicates.
The RTPS protocol supports this forwarding of messages by including information of the original writer.
OriginalWriterInfo_t
attribute type value
originalWriterGUID GUID_t the GUID of the RTPS Writer that first generated the message
originalWriterSN SequenceNumber_t the Sequence Number of the CacheChange as sent from the original writer
originalWriterQos ParameterList the list of inline parameters that should apply to the CacheChange as sent by the RTPS Writer that first generated the sampleWhen a RTPS reader receives this information it will treat it as a normal CacheChange, but once the CacheChange is ready to be commited to the DDS DataReader, it will not commit it. Instead, it will hand it off to the HistoryCache of the RTPSReader that is communicating with the RTPSWriter indicated in the ORIGINAL_WRITER_INFO inline-Qos and treat it as having the sequence number which appears there and the ParameterList also included in the ORIGINAL_WRITER_INFO.
-
Reported: DDSI-RTPS 2.0b1 — Wed, 23 May 2007 04:00 GMT
-
Disposition: Resolved — DDSI-RTPS 2.0
-
Disposition Summary:
see above
-
Updated: Fri, 6 Mar 2015 20:58 GMT