21.5 Data Durability

The data durability feature is an implementation of the OMG DDS Persistence Profile. The 47.9 DURABILITY QosPolicy allows an application to configure a DataWriter so that the information written by the DataWriter survives beyond the lifetime of the DataWriter.

Connext implements TRANSIENT and PERSISTENT durability using an external service called RTI Persistence Service, available for purchase as a separate RTI product.

Persistence Service receives information from DataWriters configured with TRANSIENT or PERSISTENT durability and makes that information available to late-joining DataReaders—even if the original DataWriter is not running.

The samples published by a DataWriter can be made durable by setting the kind field of the 47.9 DURABILITY QosPolicy to one of the following values:

  • DDS_TRANSIENT_DURABILITY_QOS:Connext will store previously published samples in memory using Persistence Service, which will send the stored data to newly discovered DataReaders.
  • DDS_PERSISTENT_DURABILITY_QOS: Connext will store previously published samples in permanent storage, like a disk, using Persistence Service, which will send the stored data to newly discovered DataReaders.

A DataReader can request TRANSIENT or PERSISTENT data by setting the kind field of the corresponding 47.9 DURABILITY QosPolicy. A DataReader requesting PERSISTENT data will not receive data from DataWriters or Persistence Service applications that are configured with TRANSIENT durability.