We stop the server by calling kill -SIGSTOP. We call the sendc_ method many times, after some time it freezes.
Stack:
__kernel_vsyscall 0x00000000f7f38b19
pthread_sigmask 0x00000000f7ee2f42
[Inlined] ACE_OS::thr_sigsetmask(int, const __sigset_t *, __sigset_t *) OS_NS_Thread.inl:3023
ACE_Sig_Guard::~ACE_Sig_Guard() Signal.cpp:49
ACE_Select_Reactor_T::any_ready(ACE_Select_Reactor_Handle_Set &) Select_Reactor_T.cpp:46
ACE_Select_Reactor_T::wait_for_multiple_events(ACE_Select_Reactor_Handle_Set &, ACE_Time_Value *) Select_Reactor_T.cpp:1078
ACE_TP_Reactor::get_event_for_dispatching(ACE_Time_Value *) TP_Reactor.cpp:443
[Inlined] ACE_TP_Reactor::dispatch_i(ACE_Time_Value *, ACE_TP_Token_Guard &) TP_Reactor.cpp:178
ACE_TP_Reactor::handle_events(ACE_Time_Value *) TP_Reactor.cpp:171
[Inlined] ACE_Reactor::handle_events(ACE_Time_Value *) Reactor.inl:179
TAO_ORB_Core::run(ACE_Time_Value *, int) ORB_Core.cpp:2305
CORBA::ORB::perform_work(ACE_Time_Value *) ORB.cpp:208
TAO_Leader_Follower_Flushing_Strategy::flush_transport(TAO_Transport *, ACE_Time_Value *) Leader_Follower_Flushing_Strategy.cpp:57
TAO_Transport::send_asynchronous_message_i(TAO_Stub *, const ACE_Message_Block *, ACE_Time_Value *) Transport.cpp:1618
TAO_Transport::send_message_shared_i(TAO_Stub *, TAO_Message_Semantics, const ACE_Message_Block *, ACE_Time_Value *) Transport.cpp:1383
TAO_Transport::send_message_shared(TAO_Stub *, TAO_Message_Semantics, const ACE_Message_Block *, ACE_Time_Value *) Transport.cpp:274
TAO_IIOP_Transport::send_message(TAO_OutputCDR &, TAO_Stub *, TAO_ServerRequest *, TAO_Message_Semantics, ACE_Time_Value *) IIOP_Transport.cpp:236
TAO_IIOP_Transport::send_request(TAO_Stub *, TAO_ORB_Core *, TAO_OutputCDR &, TAO_Message_Semantics, ACE_Time_Value *) IIOP_Transport.cpp:208
TAO::Remote_Invocation::send_message(TAO_OutputCDR &, TAO_Message_Semantics, ACE_Time_Value *) Remote_Invocation.cpp:165
TAO::Asynch_Remote_Invocation::remote_invocation(ACE_Time_Value *) Asynch_Invocation.cpp:111
TAO::Asynch_Invocation_Adapter::invoke_twoway(TAO_Operation_Details &, TAO_Pseudo_Var_T<…> &, TAO::Profile_Transport_Resolver &, ACE_Time_Value *&, TAO::Invocation_Retry_State *) Asynch_Invocation_Adapter.cpp:192
TAO::Invocation_Adapter::invoke_remote_i(TAO_Stub *, TAO_Operation_Details &, TAO_Pseudo_Var_T<…> &, ACE_Time_Value *&, TAO::Invocation_Retry_State *) Invocation_Adapter.cpp:275
TAO::Invocation_Adapter::invoke_i(TAO_Stub *, TAO_Operation_Details &) Invocation_Adapter.cpp:98
TAO::Invocation_Adapter::invoke(const TAO::Exception_Data *, unsigned long) Invocation_Adapter.cpp:47
TAO::Asynch_Invocation_Adapter::invoke(Messaging::ReplyHandler *, void (*const &)(TAO_InputCDR &, Messaging::ReplyHandler *, unsigned int)) Asynch_Invocation_Adapter.cpp:102
Subscriber::sendc_EventItem(AMI_SubscriberHandler *, const Toris2_Item &, const Toris2_Attrs &) subscriberC.cpp:162
toris2::server::subscriber::Subscribers::Event(const toris2::server::Toris2Item &&, const std::vector<…> &&) subscribers.cpp:74
I expected sends_EventItem method to return control