I've been working on getting messages to work between two applications. The subscriber is using 5.1.0.37 and the publisher is using 5.0.0 using forward compatibility in the QoS (according to https://community.rti.com/kb/how-configure-apps-backward-compatibility-510-500). The applications are using the same domain, same type, and same topic.
According to RTI Analyzer, the publisher and subscriber are a matched pair and are compatible.
Even though these conditions are satisfied, the subscribing application does not get any messages from the publisher, yet the publisher is sure that it published the message.
The subscriber has gotten messages from other sources without a problem. The publisher can publish to other sources without a problem.
Any ideas for how I can go about diagnosing why it seems that this message is dropped?
Thanks
Hi,
The first thing I would check is whether the Publisher is discovering the subscriber and vice-versa. If you can edit the code can find that by instrumenting the
on_publication_matched
/on_subscription_matched
operations on the DataReaderListener and DataWriterListener.Are the two applications running on the same or different computers? If in in the same computer do you have both configured the same with regards to the enebled transports? If one had shared memory enabled and the other not, then the logic in 5.0 and 5.1 would wrongly choose shared memory resulting on non comunicating applications.
The other thing I would try is use
rtiddspy
version 5.1.0.37 in place of the subscribing application and see if you can get that to communicate with your publisher. If that communicates then you know the issue is with tehe configuration of the subscribing application. Ifrtiddspy
version 5.1.0.37 does not communicate then I would usertiddsping
version 5.0.0 in place of the publisher communicating withrtiddspy
version 5.1.0.37 in place of the subscriber and see if you can make those communicate. Note that you will need to load the "forward compatbility" QoS profile intortiddsping
...Gerardo