Bug #135

boost::thread_resource_error thrown when creating subscribers

Added by J. Wienke over 13 years ago. Updated almost 13 years ago.

Status:RejectedStart date:09/21/2010
Priority:NormalDue date:
Assignee:S. Wrede% Done:

0%

Category:C++
Target version:-

Description

After having created a number of subscribers in one binary a boost::thread_resource_error is thrown even though the old subscribers and their thread pools are already removed and no other threads are running. To test this simply create a loop that initializes a subscriber and discards it at the end of the loop and let this code run for like 50 - 100 times.

#0  0xb77c7410 in __kernel_vsyscall ()
#1  0xb6fbd085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb6fbea01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0xb71cd480 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6
#4  0xb71cad05 in ?? () from /usr/lib/libstdc++.so.6
#5  0xb71cad42 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0xb71cae6a in __cxa_throw () from /usr/lib/libstdc++.so.6
#7  0xb761a9b9 in boost::thread::start_thread (this=0xaf7329d0) at /home/robocuper/AR/boost_1_38_0/libs/thread/src/pthread/thread.cpp:199
#8  0xb731838b in thread<boost::_bi::bind_t<void, boost::_mfi::mf0<void, rsb::util::Task<void> >, boost::_bi::list1<boost::_bi::value<rsb::util::Task<void>*> > > > (this=0xaf7329d0, f=
            {f_ = {f_ = 0xb7317ec2 <rsb::util::Task<void>::run()>}, l_ = {<boost::_bi::storage1<boost::_bi::value<rsb::util::Task<void>*> >> = {a1_ = {t_ = 0xaf732878}}, <No data fields>}})
    at /vol/nao/releases/cuttingedge/include/boost/thread/detail/thread.hpp:188
#9  0xb73184dc in rsb::util::Task<void>::start (this=0xaf732878) at /homes/jwienke/nao/RSB/src/rsb/transport/spread/../../util/Task.h:89
#10 0xb7318549 in rsb::util::TaskExecutor<void>::schedule (this=0xaf731c50, t=@0xbff21e88) at /homes/jwienke/nao/RSB/src/rsb/transport/spread/../../util/TaskExecutor.h:106
#11 0xb7322451 in rsb::util::TaskExecutor<void>::schedulePeriodic<rsb::spread::ReceiverTask> (this=0xaf731c50, p=@0xbff21ee8, freq=0) at /homes/jwienke/nao/RSB/src/rsb/transport/spread/../../util/TaskExecutor.h:101
#12 0xb731f630 in rsb::spread::SpreadPort::activate (this=0xaf731f38) at /homes/jwienke/nao/RSB/src/rsb/transport/spread/SpreadPort.cpp:78
#13 0xb7309eb0 in rsb::transport::Router::activate (this=0xaf731e80) at /homes/jwienke/nao/RSB/src/rsb/transport/Router.cpp:47
#14 0xb7682758 in rsb::Subscriber::activate (this=0xaf731ed8) at /vol/nao/releases/cuttingedge/include/rsb/Subscriber.h:65
#15 0xb76828d6 in Subscriber (this=0xaf731ed8, uri=@0xbff2205c) at /vol/nao/releases/cuttingedge/include/rsb/Subscriber.h:44
#16 0xb72f8d98 in rsb::patterns::RemoteServer::getMethodSet (this=0xaf731c08, methodName=@0xbff22294, sendType=@0xbff221c4) at /homes/jwienke/nao/RSB/src/rsb/patterns/RemoteServer.cpp:118
#17 0xb72f9a74 in rsb::patterns::RemoteServer::callMethod (this=0xaf731c08, methodName=@0xbff22294, data=@0xbff22260) at /homes/jwienke/nao/RSB/src/rsb/patterns/RemoteServer.cpp:164
#18 0xb768b65c in egomemory::comrsb::ComRsbLayerProxy::createRecord (this=0xbff228ec, record=@0xbff22910) at /homes/jwienke/nao/EgoMemory/src/EgoMemory/comrsb/ComRsbLayerProxy.cpp:46
#19 0x0816897c in ComRsbTest_testLayerProxy_Test::TestBody (this=0xaf7047d8) at /homes/jwienke/nao/EgoMemory/test/EgoMemory/comrsb/ComRsbTest.cpp:530
#20 0x081e9c5a in testing::Test::Run (this=0xaf7047d8) at /homes/jwienke/nao/EgoMemory/3rdparty/gtest-1.5.0/src/gtest.cc:2095
#21 0x081f0715 in testing::internal::TestInfoImpl::Run (this=0x825db20) at /homes/jwienke/nao/EgoMemory/3rdparty/gtest-1.5.0/src/gtest.cc:2314
#22 0x081f0858 in testing::TestCase::Run (this=0x825d7f0) at /homes/jwienke/nao/EgoMemory/3rdparty/gtest-1.5.0/src/gtest.cc:2420
#23 0x081f0b49 in testing::internal::UnitTestImpl::RunAllTests (this=0x825dcb0) at /homes/jwienke/nao/EgoMemory/3rdparty/gtest-1.5.0/src/gtest.cc:4024
#24 0x081f0cd8 in testing::UnitTest::Run (this=0x824ab20) at /homes/jwienke/nao/EgoMemory/3rdparty/gtest-1.5.0/src/gtest.cc:3687
#25 0x0817175b in main (argc=Cannot access memory at address 0x1399
) at /homes/jwienke/nao/EgoMemory/test/EgoMemory/comrsb/ComRsbTest.cpp:544

History

#1 Updated by J. Wienke over 13 years ago

  • Category set to C++

#2 Updated by J. Wienke almost 13 years ago

  • Status changed from New to Rejected

We never received this again.

Also available in: Atom PDF