Changing the type code for a dynamic data reader/writer

I have a part of my program that continuously monitors the topics on DDS. I have it able to determine when a topic comes online with a different type code than what it previously had. What I'm trying to do to deal with this is:

// Delete the existing data reader:

participant.delete_datareader((DynamicDataReader) ddrw);

// Delete the topic:

participant.delete_topic(participant.find_topic(topic, new Duration_t(1000, 0)));

// Unregister the type:

typeSupports.get(topic).unregister_type(participant, topic);


Modern C++ API and lookup_datareader


It does not seem lookup_datareader() is implemnted in the moderm C++ API (RTI version 5.2.3)

It is mentioned in

in the "Detailed description" paragraph. However it is not documented in the subscriber API and it does not seem to be implemented. Is it possible to clarify its implementation status ?




max_samples_per_read and query condition

I would like to understand how the QoS setting, max_samples_per_read  relate to a read with a query condition. Will max_samples_per_read specify the total samples in the reader or the samples that satisfy the query ?

From my limited testing it seems max_samples_per_read specifies the total number of samples that will be read including the samples that do not satisfy the query. 


Debug TCP transport with Admin Console

Is it possible to use RTI Admin Console to debug TCP transports.

RTI Administration Console Version:




RTIDDSGEN Java Version Compatibility

As of RTI version 5.2.3, what is the minimum supported JRE that code generated via rtiddsgen.bat will support? I saw another question in the forums similar to this regarding Java 1.6 it said that by default rtiddgen.bat uses Java 1.4 to generate the code. After looking through %NDDSHOME%\resource\app\jre\i86Win32\bin I ran "java -version" on the java.exe included in that directory. It said that is was version 1.7. Can JRE versions 1.4-1.6 still run Java code generated via RTIDDSGEN using a .idl file? I was unable to find any information on this online.


Adjusting RTI_RECORDER XML to Write a single topic's data to separate tables based on some criteria

We have an existing RTI_Recorder XML file that writes individual topic data to a corresponding table in a database. It does it for the majority of our topics but I was wondering if it is possible to set this XML to split a particular topic's data into multiple tables based on some criteria. In this instance a machineId (which is part of the DDS topic). 


DDS Persistence Service Over 2 Domains

Hi everyone! 

We have a system where there are two main domains one that primarily generates data and the other that primarily recieves it, although there is two way communication for the rare instances that something is changed via the other domain. The connection between the two is not always reliable and we are looking for a functionality to backfill missed data that occurs when the connection is down, once the connection resumes.


Delivery of TRANSIENT_LOCAL topics after the samples became invalid

This question is about TRANSIENT_LOCAL, RELIABLE topics when the communication link goes down for a long enough period for the samples to get invalidated. The ConnextDDS user manual states that TRANSIENT_LOCAL samples will be delivered if the samples have not yet been acknowledged.


Copy of samples from sequence in Java API

This question has to do with general programming and concurrency, but since the Java API is an exception

from the other languages in the RTI API, it is a valid question for this  forum I think. According to a post (, the Java API does not support deep copy of objects from

sequences. For example the C++ API support copy of object without using Loanable sequences.

Subscribe to RSS - Komatsu