Archived

This forum has been archived. Please start a new discussion on GitHub.

service crass on ice_atomic_exchange

xdm
xdm La Coruña, Spain
Hello

I have one IceBox::Service that CRASS with this stack trace, when a proxy to the session goes out of scope


Ice-3.2.1 , gcc version 4.1.2, linux-2.6.22
Stack Trace
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1360852080 (LWP 30341)]
0x08057b93 in ice_atomic_exchange_add (i=0, v=0xdeef005d) at ../../include/IceUtil/Shared.h:104
104             : "memory");
(gdb) bt
#0  0x08057b93 in ice_atomic_exchange_add (i=0, v=0xdeef005d) at ../../include/IceUtil/Shared.h:104
#1  0x0805c97c in IceUtil::Shared::__decRef (this=0xdeef0059) at ../../include/IceUtil/Shared.h:226
#2  0xaf73307e in IceInternal::decRef (p=0xadc0c928) at ../../src/SessionManager/Session.cpp:138
#3  0xaf6c85ee in ~ProxyHandle (this=0xadc0babc) at /opt/Ice-3.2.1/include/Ice/ProxyHandle.h:157
#4  0xaf6c6061 in ~WebApp (this=0xadc0ba68) at src/WebApp.cpp:14
#5  0xafb69ff4 in boost::checked_delete<Oz::YdraPortal::YdraPortalApplication> (x=0xadc0ba68) at /opt/boost/include/boost-1_34/boost/checked_delete.hpp:34
#6  0xafb6a23e in boost::detail::sp_counted_impl_p<Oz::YdraPortal::YdraPortalApplication>::dispose (this=0xadc0ba50)
    at /opt/boost/include/boost-1_34/boost/detail/sp_counted_impl.hpp:79
#7  0xb19a17f6 in boost::detail::sp_counted_base::release (this=0xadc0ba50) at /opt/boost/include/boost-1_34/boost/detail/sp_counted_base_gcc_x86.hpp:145
#8  0xb19a183e in ~shared_count (this=0xadc0b960) at /opt/boost/include/boost-1_34/boost/detail/shared_count.hpp:205
#9  0xafb69efa in ~shared_ptr (this=0xadc0b95c) at /opt/boost/include/boost-1_34/boost/shared_ptr.hpp:131
#10 0xaf6cea36 in ~WebPageFactory (this=0xadc0b958) at src/WebPageFactory.cpp:6
#11 0xafb6c937 in ~YdraPortalPageFactory (this=0xadc0b958) at src/YdraPortalPageFactory.cpp:11
#12 0xafb6a04e in boost::checked_delete<Oz::YdraPortal::YdraPortalPageFactory> (x=0xadc0b958) at /opt/boost/include/boost-1_34/boost/checked_delete.hpp:34
#13 0xafb6a20e in boost::detail::sp_counted_impl_p<Oz::YdraPortal::YdraPortalPageFactory>::dispose (this=0xadc0bac8)
    at /opt/boost/include/boost-1_34/boost/detail/sp_counted_impl.hpp:79
#14 0xb19a17f6 in boost::detail::sp_counted_base::release (this=0xadc0bac8) at /opt/boost/include/boost-1_34/boost/detail/sp_counted_base_gcc_x86.hpp:145
#15 0xb19a183e in ~shared_count (this=0xadc0bafc) at /opt/boost/include/boost-1_34/boost/detail/shared_count.hpp:205
#16 0xafb69f20 in ~shared_ptr (this=0xadc0baf8) at /opt/boost/include/boost-1_34/boost/shared_ptr.hpp:131
#17 0xaf6c7741 in ~WebPagePattern (this=0xadc0baf8) at include/WebUi/WebPage.h:267
#18 0xaf6c778d in std::_Destroy<Oz::WebUi::WebPagePattern> (__pointer=0xadc0baf8) at /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_construct.h:107
#19 0xaf6c785d in std::__destroy_aux<Oz::WebUi::WebPagePattern*> (__first=0xadc0baf8, __last=0xadc0bb08)
    at /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_construct.h:122
#20 0xaf6c789c in std::_Destroy<Oz::WebUi::WebPagePattern*> (__first=0xadc0baf8, __last=0xadc0bb08)
    at /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_construct.h:155
#21 0xaf6c78c6 in std::_Destroy<Oz::WebUi::WebPagePattern*, Oz::WebUi::WebPagePattern> (__first=0xadc0baf8, __last=0xadc0bb08)
    at /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_construct.h:182
#22 0xaf6c7b49 in ~vector (this=0xadc0ba88) at /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_vector.h:272
#23 0xaf6c665d in ~WebApp (this=0xadc0ba68) at src/WebApp.cpp:14
#24 0xaf66da55 in ~YdraWebApp (this=0xadc0ba68) at src/YdraWebApp.cpp:8
#25 0xafb6990d in ~YdraPortalApplication (this=0xadc0ba68) at src/YdraPortalApplication.cpp:20
#26 0xafb69ff4 in boost::checked_delete<Oz::YdraPortal::YdraPortalApplication> (x=0xadc0ba68) at /opt/boost/include/boost-1_34/boost/checked_delete.hpp:34
#27 0xafb6a23e in boost::detail::sp_counted_impl_p<Oz::YdraPortal::YdraPortalApplication>::dispose (this=0xadc0bb10)
    at /opt/boost/include/boost-1_34/boost/detail/sp_counted_impl.hpp:79
#28 0xb19a17f6 in boost::detail::sp_counted_base::release (this=0xadc0bb10) at /opt/boost/include/boost-1_34/boost/detail/sp_counted_base_gcc_x86.hpp:145
#29 0xb19a183e in ~shared_count (this=0xaee2fcbc) at /opt/boost/include/boost-1_34/boost/detail/shared_count.hpp:205
#30 0xb19a19d4 in ~shared_ptr (this=0xaee2fcb8) at /opt/boost/include/boost-1_34/boost/shared_ptr.hpp:131
#31 0xaddf8c5a in IWebApplicationHandler::run (this=0xadc082c0, rq=0xadc04b30) at src/IWebApplicationHandler.cpp:95
#32 0xb0cc2f5e in MaRequest::runHandlers () from /usr/lib/libappweb.so.2
#33 0xb0cc33d1 in MaRequest::processRequest () from /usr/lib/libappweb.so.2
#34 0xb0cc362d in MaRequest::readEvent () from /usr/lib/libappweb.so.2
#35 0xb0cc36ef in ?? () from /usr/lib/libappweb.so.2
#36 0xb0cc82cd in MprSocket::ioProc () from /usr/lib/libappweb.so.2
#37 0xb0cc7dd1 in ?? () from /usr/lib/libappweb.so.2
#38 0xb0cc523a in MprSelectService::serviceIO () from /usr/lib/libappweb.so.2
#39 0xb0cb8ca6 in Mpr::serviceIO () from /usr/lib/libappweb.so.2
#40 0xb0cb90ca in Mpr::serviceEvents () from /usr/lib/libappweb.so.2
#41 0xb1943006 in Oz::WebServer::run (this=0x80757f8) at WebServer.cpp:57
#42 0xb7c7531f in startHook (arg=0x80757f8) at Thread.cpp:357
---Type <return> to continue, or q <return> to quit---
#43 0xb7c1a2c1 in start_thread () from /lib/libpthread.so.0
#44 0xb7aa0f9e in clone () from /lib/libc.so.6

Thanks

Comments

  • xdm
    xdm La Coruña, Spain
    The problem seems not related to Ice, I use boost::shared_ptr for same no ice classes and this produce a doble deletion issue