Jump to content
OpenSplice DDS Forum
Sign in to follow this  

difference between 6.4 and 6.7

Recommended Posts

hello all, just a note to share my experience upgrading from 6.4 to 6.7.

I had a bunch of unit test that use the 'no-network.ospl' file. 

They are run via a test framework (boost  / ctest) and each executable would make a partiticipant, publishers, subscribers, etc. for each test.

Tests using sequences started failing.  But only the 2nd and following tests, the first test in the executable always passed. 

The assert that was firing was in the idlpp created code.   A quick look at it showed the caching of a value that cannot be initialized correctly the second time everything was destroyed and re-created.

Below is the cmake line that I used to 'fix' this, where 'fix' means give me back the behavior I had before.

                  # This removes an optimization from the idlpp generated code that I think is wrong
                   # and causes us ctest failures.  this code is made in ospl version 6.7, and not in
                   # previous versions.  What the future holds is unknown
                        COMMAND sed
                        ARGS -i
                        "s/static c_type type0/c_type type0/" ${CMAKE_CURRENT_BINARY_DIR}/include/${BASENAME}SplDcps.c\

Using static variables is always tricky, I think it is wrong but what do I know :)

Just thought I would post this so others who experience the same kind of issue could perhaps save a bit of time.



Bud Davis






Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this