21. Mechanisms for Achieving Information Durability and Persistence

21.1 Overview

Durable Writer History and Durable Reader State are temporarily disabled. A future feature release will resume support for them. Use Part 12: RTI Persistence Service to persist your data instead. For further clarification, see the RTI Connext Core Libraries What's New in 7.0.0 or contact RTI Support at support@rti.com.

Connext offers the following mechanisms for achieving durability and persistence:

  • Durable Writer History This feature allows a DataWriter to persist its historical cache, perhaps locally, so that it can survive shutdowns, crashes and restarts. When an application restarts, each DataWriter that has been configured to have durable writer history automatically loads all of the data in this cache from disk and can carry on sending data as if it had never stopped executing. To the rest of the system, it will appear as if the DataWriter had been temporarily disconnected from the network and then reappeared.
  • Durable Reader State This feature allows a DataReader to persist its state and remember which data it has already received. When an application restarts, each DataReader that has been configured to have durable reader state automatically loads its state from disk and can carry on receiving data as if it had never stopped executing. Data that had already been received by the DataReader before the restart will be suppressed so that it is not even sent over the network.
  • Data Durability This feature is a full 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. In this manner, a late-joining DataReader can subscribe to and receive the information even after the DataWriter application is no longer executing. To use this feature, you need Persistence Service, a separate application described in 73. Introduction to RTI Persistence Service.

These features can be configured separately or in combination. To use Durable Writer State and Durable Reader State, you need a relational database, which is not included with Connext. Persistence Service does not require a database when used in TRANSIENT mode (see 21.5.1 RTI Persistence Service) or in PERSISTENT mode with file-system storage (see 21.5.1 RTI Persistence Service and 74.5 Configuring Remote Administration).

To understand how these features interact we will examine the behavior of the system using the following scenarios: