So I am running into a problem that i cannot yet explain. I have a situation where i have a subscriber, and the subscriber subscribes to a topic that is published from two different sources (publishers). So it seems like every now and then either i will receive samples from either, one, both, or none. However when i only use publisher, then i always receive the samples. Its like they are completing to associate, but sometimes one, both, or neither do. Any ideas?
Perhaps you're not configuring a history-depth for your dataReader ?
The default is a KEEP_LAST history with history-depth 1 which implies that whenever a second sample arrives before you've taken out the first from the cache, the first one will be 'pushed-out' leaving you only with the second one .. Timing/scheduling will determine which one you'll eventually see ..
So you should setup an appropriate QoS-policy w.r.t. history when creating your subscriber's dataReader
Thanks for the quick response Hans. I am currently running with the default Qos settings. There is currently not a lot of stress on the system. So can the history-depth be set in the .ini config file? Another topic of interest is that there are three executables running in total. So there are essentially three different participants. One publishes the sample, and the other two filter certain samples. However i providing the filter (not utilizing DDS to filter). So both applications that subscribe to this topic receive all samples, but filter the ones they don't want. Does this seem like for the case you described above?
So after looking at the logs, it appears that the two apps that are subscribers discover and associate with the publisher. However in some cases the publisher discovers the two subscribers, however it does not associate with them. Any idea? The logs lack the add_association calls on the DataWriterImpl's.