DDS_TransportBuiltinQosPolicy of the participant

5 posts / 0 new
Last post
Offline
Last seen: 2 years 9 months ago
Joined: 01/13/2016
Posts: 43
DDS_TransportBuiltinQosPolicy of the participant

Hi,

      I have a trouble that I create two participant A and B in same program, I set different transports for them, here is the code

DDS_DomainParticipantFactory_get_default_participant_qos(DDS_TheParticipantFactory, &participant_qos);
participant_qos.wire_protocol.participant_id = 0;
participant_qos.transport_builtin.mask = DDS_TRANSPORTBUILTIN_SHMEM;
cParticipant = DDS_DomainParticipantFactory_create_participant (
DDS_TheParticipantFactory,
domain,
&participant_qos,
NULL,
DDS_STATUS_MASK_NONE);

participant_qos.wire_protocol.participant_id = 1;
participant_qos.transport_builtin.mask = DDS_TRANSPORTBUILTIN_MASK_DEFAULT;
dParticipant = DDS_DomainParticipantFactory_create_participant (
DDS_TheParticipantFactory,
domain,
&participant_qos,
NULL,
DDS_STATUS_MASK_NONE);

there are errors when the program runs:

COMMENDBeWriterService_assertRemoteReader:Discovered remote reader using a non-addressable multicast locator for a transport with class ID 1.
This can occur if multicast is not enabled in the local participant.
See https://community.rti.com.kb/what-does-cant-reach-locator-error-message-mean for additional info.
can't reach:
locator:
transport: 1 (UDPV4)
address:239.255.0.1
port 19150
enapsulation:
transport_priority: 0
aliasList: ""

why?

Offline
Last seen: 2 years 9 months ago
Joined: 01/13/2016
Posts: 43

I need to forbidden using UDPV4 in one of the participant. How do I achieve it ?

Francisco Porcel's picture
Offline
Last seen: 1 month 5 days ago
Joined: 11/07/2016
Posts: 24

Hi RareLonely,

This article in our Community should clarify the message you are getting. Please, let me know if it you have any further questions.

-Fran

Offline
Last seen: 2 years 9 months ago
Joined: 01/13/2016
Posts: 43

Hi Francisco,

    I have read this article, it seems the same problem but it did have difference.In my situation, the participant A and B has different topics, each topic has datawriter and datareader, and they all in the same participant.I wonder why the message show up when the program start? Because at this time, Both the datawriter and datareader have the same builtin transport plug 

Offline
Last seen: 1 month 3 days ago
Joined: 02/11/2016
Posts: 143

Hey,

 

Firstly I'd recommend making sure you don't have shared topics between the participants

Secondly, it may be that you're getting this message because the builtin topics of rti use datawriters and datareaders as well and if both participants are on the same domain (which your code seems to imply) they may encounter the same issue (the builtin writer of one participant can't send to the builtin reader of another participant)

Good luck,

Roy.