Stopped subscribing topics in one mchine

2 posts / 0 new
Last post
Last seen: 5 years 8 months ago
Joined: 09/17/2018
Posts: 1
Stopped subscribing topics in one mchine

My application is designed for real time data handling and the data rate is too high. The scenario is as folllow-

One data topic is subscribed by more than one application . the subscriber applications are residing at different servers. After a long run  one machine stopped to subscribing the data and the same topic is being received at other machines successfully.

In this machine where data stopped having high processing. 

Read or take calls  may impact in this scenario ..kindly elaborate the all possibilities.


sara's picture
Last seen: 1 year 5 months ago
Joined: 01/16/2013
Posts: 128


I'm not sure I understand the scenario. But let me give you some general details from the user manual:

The difference between read() and take() is how Connext DDS treats the data that is returned. With take()Connext DDS will remove the data from the DataReader’s receive queue. The data returned by Connext DDS is no longer stored by Connext DDS. With read()Connext DDS will continue to store the data in the DataReader’s receive queue. The same data may be read again until it is taken in subsequent take() calls. Note that the data stored in the DataReader’s receive queue may be overwritten, even if it has not been read, depending on the setting of the HISTORY QosPolicy.

So, if you take data, they are automatically deleted from the queue. That's the main difference. Depending on the History policy, you will overwrite data or not when you only read.

Which other aspects did you have in mind?