Problem with routing service and unbound sequences

4 posts / 0 new
Last post
Offline
Last seen: 1 year 7 months ago
Joined: 08/25/2015
Posts: 32
Problem with routing service and unbound sequences

Hi,

I tried to use the routing service in our environment. The example worked fine but when I started our services, the routing service bailed out with

REDAFastBufferPool_growEmptyPoolEA: !allocate buffer of 68719444224 bytes

[D0032|Pub(80000008)|T=LTS_SitReplayUnbound|CREATE Writer]REDAFastBufferPool_newWithNotification:!create fast buffer pool buffers

[D0032|Pub(80000008)|T=LTS_SitReplayUnbound|CREATE Writer]PRESTypePluginDefaultEndpointData_createWriterPool:!create writer buffer pool

Speicherzugriffsfehler

After digging around a little bit I found out that the routing service fails on every topic with max_sample_serialized_size = 2.147.482.623.

This is nearly every topic in our environment since we enabled unbound support within rtiddsgen and it looks like every string (no matter if bound or unbound) in a topic leads to a max_sample_serialized_size of 2.147.482.623.

 

Is this a known issue? What can I do to prevent the routing service trying to allocate 64GB or mem?

/edit: We're using 5.2.3 Patch 6
 

Offline
Last seen: 1 year 7 months ago
Joined: 08/25/2015
Posts: 32

Ok, it looks like the routing service does not use my parameters set in the QoS xml.

Pointing NDDS_QOS_PROFILES to my xml file and starting an example with an unbound topic, all works fine. Removing the pool_buffer_max_size parameter from the xml results in the crash due to the desired allocation of 68GB. This shows that my setup is correct but somehow the routing service executable does not honor the pool_buffer_max_size in the given QoS profile ...

Any ideas what's going wrong here?

asanchez's picture
Offline
Last seen: 1 year 6 months ago
Joined: 11/16/2011
Posts: 50

Hi Christian,

If you have the QoS profiles properly setup, all you have to do is to explicity use that profile in your RoutingService TopicRoutes' input and output. Make sure RS loads your file, and then use the <datareader_qos> and <datawriter_qos> tags to refer to the profile that contains the settings for unbounded.

For example:

<topic_route>
     ...
     <input>
        ...
        <datareader_qos base_name="QosLibrary::QosProfileUnbounded"/>  
    </input> 
    ... 
</topic_route>

Best,

Antonio

 
Offline
Last seen: 1 year 7 months ago
Joined: 08/25/2015
Posts: 32

Hi,

this this was the piece missing piece. The documentation states about how to load custom profile files but how to select the custom profile is not really described - at least I could not find anything regarding this there :)

 

Thx,

Christian