Hello,

 

I am getting assertion failure in boost inter process library (trying to connect client/server via shared memory).

This is happening especially while building an optimized version (-O3). When I build my applications in debug version I do not get this failure.

Please let me know if anyone come across this type of issue earlier. I have included stack trace below, also let me know if any more information required.

I am using boost version 1_40.

 

 

#0  0x00007ffff70d1a75 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64

#1  0x00007ffff70d55c0 in *__GI_abort () at abort.c:92

#2  0x00007ffff70ca941 in *__GI___assert_fail (assertion=0x4888a3 "res == 0", file=<value optimized out>, line=107, function=0x48af60 "void boost::interprocess::interprocess_recursive_mutex::unlock()")

    at assert.c:81

#3  0x000000000045da9a in void* boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void>, 0ul>, boost::interprocess::iset_index>::priv_generic_find<char>(char const*, boost::interprocess::iset_index<boost::interprocess::detail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void>, 0ul> > >&, boost::interprocess::detail::in_place_interface&, unsigned long&, boost::interprocess::detail::bool_<true>, bool) ()

#4  0x000000000043fd88 in priv_find_impl<smpd::State> (this=0x6dc670, clear=<value optimized out>) at /usr/include/boost/interprocess/segment_manager.hpp:704

#5  find<smpd::State> (this=0x6dc670, clear=<value optimized out>) at /usr/include/boost/interprocess/segment_manager.hpp:418

#6  find<smpd::State> (this=0x6dc670, clear=<value optimized out>) at /usr/include/boost/interprocess/detail/managed_memory_impl.hpp:343

#7  find<smpd::State> (this=0x6dc670, clear=<value optimized out>) at /usr/include/boost/interprocess/managed_shared_memory.hpp:197

#8  buildObject<smpd::State> (this=0x6dc670, clear=<value optimized out>) at shm_interface.h:136

 

 

Thanks