User Tools

Site Tools


ddsf:public:guidebook:06_append:02_quality_of_service:durability

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
ddsf:public:guidebook:06_append:02_quality_of_service:durability [2021/07/14 15:55]
murphy ↷ Links adapted because of a move operation
ddsf:public:guidebook:06_append:02_quality_of_service:durability [2021/07/14 15:56] (current)
murphy ↷ Links adapted because of a move operation
Line 10: Line 10:
  
 For the purpose of implementing the DURABILITY QoS kind TRANSIENT or PERSISTENT, the service behaves “as if” for For the purpose of implementing the DURABILITY QoS kind TRANSIENT or PERSISTENT, the service behaves “as if” for
-each ''​[[ddsf:​private:​guidebook:​06_append:​glossary:​t:​topic|Topic]]''​ that has TRANSIENT or PERSISTENT DURABILITY kind there was a corresponding “built-in” ''​DataReader''​ and ''​DataWriter''​ configured to have the same DURABILITY kind. In other words, it is “as if” somewhere in the system (possibly on a remote node) there was a “built-in durability ''​DataReader''​” that subscribed to that Topic and a “built-in durability ''​DataWriter”''​ that published that Topic as needed for the new subscribers that join the system.+each ''​[[ddsf:​public:​guidebook:​06_append:​glossary:​t:​topic|Topic]]''​ that has TRANSIENT or PERSISTENT DURABILITY kind there was a corresponding “built-in” ''​DataReader''​ and ''​DataWriter''​ configured to have the same DURABILITY kind. In other words, it is “as if” somewhere in the system (possibly on a remote node) there was a “built-in durability ''​DataReader''​” that subscribed to that Topic and a “built-in durability ''​DataWriter”''​ that published that Topic as needed for the new subscribers that join the system.
  
 For each ''​Topic'',​ the built-in fictitious “persistence service” ''​DataReader''​ and ''​DataWriter''​ has its QoS configured from the ''​Topic''​ QoS of the corresponding ''​Topic''​. In other words, it is “as-if” the service first did find_topic to access the ''​Topic'',​ and then used the QoS from the Topic to configure the fictitious built-in entities. For each ''​Topic'',​ the built-in fictitious “persistence service” ''​DataReader''​ and ''​DataWriter''​ has its QoS configured from the ''​Topic''​ QoS of the corresponding ''​Topic''​. In other words, it is “as-if” the service first did find_topic to access the ''​Topic'',​ and then used the QoS from the Topic to configure the fictitious built-in entities.
Line 18: Line 18:
 For a given Topic, the usual request/​offered [[ddsf:​public:​guidebook:​06_append:​glossary:​s:​semantics|semantics]] apply to the matching between any DataWriter in the system that writes the Topic and the built-in transient/​persistent DataReader for that Topic; similarly for the built-in transient/​persistent DataWriter for a Topic and any DataReader for the Topic. As a consequence,​ a DataWriter that has an incompatible QoS with respect to what the Topic specified will not send its data to the transient/​persistent service, and a DataReader that has an incompatible QoS with respect to the specified in the Topic will not get data from it. For a given Topic, the usual request/​offered [[ddsf:​public:​guidebook:​06_append:​glossary:​s:​semantics|semantics]] apply to the matching between any DataWriter in the system that writes the Topic and the built-in transient/​persistent DataReader for that Topic; similarly for the built-in transient/​persistent DataWriter for a Topic and any DataReader for the Topic. As a consequence,​ a DataWriter that has an incompatible QoS with respect to what the Topic specified will not send its data to the transient/​persistent service, and a DataReader that has an incompatible QoS with respect to the specified in the Topic will not get data from it.
  
-Incompatibilities between local ''​DataReader''/''​DataWriter''​ entities and the corresponding fictitious “built-in transient/​persistent entities” cause the REQUESTED_INCOMPATIBLE_QOS/​OFFERED_INCOMPATIBLE_QOS status to change and the corresponding [[ddsf:​public:​guidebook:​06_append:​glossary:​l:​listener|Listener]] invocations and/or signaling of ''​[[ddsf:​public:​guidebook:​06_append:​glossary:​c:​condition|Condition]]''​ and ''​[[ddsf:​private:​guidebook:​06_append:​glossary:​w:​waitset|WaitSet]]''​ objects as they would with non-fictitious entities.+Incompatibilities between local ''​DataReader''/''​DataWriter''​ entities and the corresponding fictitious “built-in transient/​persistent entities” cause the REQUESTED_INCOMPATIBLE_QOS/​OFFERED_INCOMPATIBLE_QOS status to change and the corresponding [[ddsf:​public:​guidebook:​06_append:​glossary:​l:​listener|Listener]] invocations and/or signaling of ''​[[ddsf:​public:​guidebook:​06_append:​glossary:​c:​condition|Condition]]''​ and ''​[[ddsf:​public:​guidebook:​06_append:​glossary:​w:​waitset|WaitSet]]''​ objects as they would with non-fictitious entities.
  
 The setting of the service_cleanup_delay controls when the TRANSIENT or PERSISTENT service is able to remove all The setting of the service_cleanup_delay controls when the TRANSIENT or PERSISTENT service is able to remove all
ddsf/public/guidebook/06_append/02_quality_of_service/durability.1626292507.txt.gz · Last modified: 2021/07/14 15:55 by murphy