OOPS, I probably should have checked all the locked threads before posting this. Thread 6 seems to be the critical thread because I create an ostringstream in a signal handler that interupts another ostringstream creation.
gdb has this to say. (gdb) thread 6 [Switching to thread 6 (Thread 0x7ff746539950 (LWP 30146))]#0 0x00007ff747063a94 in __lll_lock_wait () from /lib/libpthread.so.0 (gdb) bt #0 0x00007ff747063a94 in __lll_lock_wait () from /lib/libpthread.so.0 #1 0x00007ff74705f190 in _L_lock_102 () from /lib/libpthread.so.0 #2 0x00007ff74705ea7e in pthread_mutex_lock () from /lib/libpthread.so.0 #3 0x00007ff746db28ef in std::locale::locale () from /usr/lib/libstdc++.so.6 #4 0x00007ff746de97af in std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream () from /usr/lib/libstdc++.so.6 #5 0x000000000045f355 in FixAdminMessageFactory::createMsgHeader ( this=0x7ff74653875f, bo...@0x7ff7465386a0, ty...@0x7ff746538690) at broker/FixAdminMessageFactory.cpp:34 #6 0x00000000004602a6 in FixAdminMessageFactory::createHeartBeatMsg ( this=0x7ff74653875f, testreq...@0x7ff746538750) at broker/FixAdminMessageFactory.cpp:153 #7 0x000000000042b227 in heartbeat (signum=14) at transport/FIXTCP.cpp:40 #8 <signal handler called> #9 0x00007ff74705ea78 in pthread_mutex_lock () from /lib/libpthread.so.0 #10 0x00007ff746db28ef in std::locale::locale () from /usr/lib/libstdc++.so.6 #11 0x00007ff746de84b2 in std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream () from /usr/lib/libstdc++.so.6 #12 0x000000000042c914 in transport::FeedTCP::_handleSessionMessage (this=0xf815c0, msg=0xf81840 "M 6B.Z09 S 41 16353 2015260 55854425\n") at transport/FeedTCP.cpp:226 #13 0x000000000042ce5b in transport::FeedTCP::nextBlock (this=0xf815c0, wait_us=1000) at transport/FeedTCP.cpp:196 #14 0x00000000004215e4 in datafeed::DataFeed::run (this=0xf806a0, handler=0xf81690) at feed/DataFeed.cpp:120 #15 0x000000000043126b in MarketData::_run (this=0xf81690) at base/MarketData.cpp:182 #16 0x00000000004314db in MarketData::_entryPoint (arg=0xf81690) ---Type <return> to continue, or q <return> to quit--- at base/MarketData.cpp:44 #17 0x00007ff74705d3ba in start_thread () from /lib/libpthread.so.0 #18 0x00007ff74661ffcd in clone () from /lib/libc.so.6 #19 0x0000000000000000 in ?? () -- Creating ostringstream causes deadlock https://bugs.launchpad.net/bugs/453518 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs