[tao-bugs] Odp: Odp: Re: tao imr locator seg fault

Tomasz Mikolajczyk miksiublues at wp.pl
Wed Jul 4 17:51:01 CDT 2018


Dnia Czwartek, 5 Lipca 2018 00:13 Tomasz Mikolajczyk <miksiublues at wp.pl> napisał(a) 

Yet another seg-fault:
(gdb) bt
#0 0x0000000001382b80 in ?? ()
#1 0x00002aaaaacf152e in AsyncAccessManager::notify_waiters (this=0xe16230) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp:272
#2 0x00002aaaaacf0f94 in AsyncAccessManager::final_state (this=0xe16230, active=true) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp:201
#3 0x00002aaaaacf20b2 in AsyncAccessManager::notify_child_death (this=0xe16230, pid=26884) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp:485
#4 0x00002aaaaad00600 in ImR_Locator_i::child_death_i (this=0x7fffffffc0d0, name=0x8e1830 "taotester181", pid=26884) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:522
#5 0x00002aaaaad007e7 in ImR_Locator_i::child_death_pid (this=0x7fffffffc0d0, _tao_rh=0x735eb8, name=0x8e1830 "taotester181", pid=26884)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:552
#6 0x00002aaaab1f8199 in POA_ImplementationRepository::AMH_Locator::child_death_pid_skel (_tao_server_request=..., _tao_servant=0x7fffffffc358)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_LocatorS.cpp:385
#7 0x00002aaaacdca601 in TAO_ServantBase::asynchronous_upcall_dispatch (this=0x7fffffffc358, req=..., servant_upcall=0x7fffffffa5c0, derived_this=0x7fffffffc358)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Servant_Base.cpp:638
#8 0x00002aaaab1f8620 in POA_ImplementationRepository::AMH_Locator::_dispatch (this=0x7fffffffc0d0, req=..., context=0x7fffffffa5c0)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_LocatorS.cpp:485
#9 0x00002aaaacd86fb5 in TAO_Object_Adapter::do_dispatch (this=0x643de0, req=..., upcall=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Object_Adapter.cpp:1205
#10 0x00002aaaacd85153 in TAO_Object_Adapter::dispatch_servant (this=0x643de0, key=..., req=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Object_Adapter.cpp:360
#11 0x00002aaaacd85ff4 in TAO_Object_Adapter::dispatch (this=0x643de0, key=..., request=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Object_Adapter.cpp:773
#12 0x00002aaaad87a384 in TAO_Adapter_Registry::dispatch (this=0x63bb68, key=..., request=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Adapter_Registry.cpp:107
#13 0x00002aaaad8fceac in TAO_Request_Dispatcher::dispatch (this=0x63c440, orb_core=0x63b6b0, request=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Request_Dispatcher.cpp:17
#14 0x00002aaaad88ffa1 in TAO_GIOP_Message_Base::process_request (this=0x71db50, transport=0x687130, cdr=..., output=..., parser=0x71db68)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/GIOP_Message_Base.cpp:991
#15 0x00002aaaad88f586 in TAO_GIOP_Message_Base::process_request_message (this=0x71db50, transport=0x687130, qd=0x7fffffffb400) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/GIOP_Message_Base.cpp:721
#16 0x00002aaaad92862c in TAO_Transport::process_parsed_messages (this=0x687130, qd=0x7fffffffb400, rh=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:2529
#17 0x00002aaaad9282c1 in TAO_Transport::handle_input_parse_data (this=0x687130, rh=..., max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:2453
#18 0x00002aaaad926bab in TAO_Transport::handle_input (this=0x687130, rh=..., max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:1769
#19 0x00002aaaad8862fb in TAO_Connection_Handler::handle_input_internal (this=0x71d718, h=7, eh=0x71d650) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:294
#20 0x00002aaaad886152 in TAO_Connection_Handler::handle_input_eh (this=0x71d718, h=7, eh=0x71d650) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:253
#21 0x00002aaaad8acd53 in TAO_IIOP_Connection_Handler::handle_input (this=0x71d650, h=7) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/IIOP_Connection_Handler.cpp:405
#22 0x00002aaaadcbb309 in ACE_Dev_Poll_Reactor::upcall (this=0x641d90, event_handler=0x71d650, callback=&virtual table offset 48, handle=7) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.inl:84
#23 0x00002aaaadcb8a2e in ACE_Dev_Poll_Reactor::dispatch_io_event (this=0x641d90, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1299
#24 0x00002aaaadcb858c in ACE_Dev_Poll_Reactor::dispatch (this=0x641d90, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1076
#25 0x00002aaaadcb8539 in ACE_Dev_Poll_Reactor::handle_events_i (this=0x641d90, max_wait_time=0x0, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1053
#26 0x00002aaaadcb838d in ACE_Dev_Poll_Reactor::handle_events (this=0x641d90, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1009
#27 0x00002aaaad8c69b8 in ACE_Reactor::handle_events (this=0x641ff0, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Reactor.inl:185
#28 0x00002aaaad8df2ac in TAO_ORB_Core::run (this=0x63b6b0, tv=0x0, perform_work=0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB_Core.cpp:2320
#29 0x00002aaaad8d3dc7 in CORBA::ORB::run (this=0x642010, tv=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB.cpp:188
#30 0x00002aaaad8d3d5f in CORBA::ORB::run (this=0x642010) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB.cpp:174
#31 0x00002aaaaacff469 in ImR_Locator_i::run (this=0x7fffffffc0d0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:288
#32 0x000000000040202a in run_standalone (opts=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator.cpp:54
#33 0x00000000004022dd in main (argc=9, argv=0x7fffffffc608) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator.cpp:191
(gdb) up
#1 0x00002aaaaacf152e in AsyncAccessManager::notify_waiters (this=0xe16230) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp:272
272 rh->send_exception (ex._tao_duplicate());
(gdb) p rh
$1 = (ImR_ResponseHandler *) 0x1382b90
(gdb) p ex
$2 = (const CORBA::Exception &) @0x855790: {_vptr.Exception = 0x2aaaab6c3ac8 <vtable for ImplementationRepository::CannotActivate+16>, id_ = {
ptr_ = 0x12b7d80 "IDL:ImplementationRepository/CannotActivate:1.0"}, name_ = {ptr_ = 0xfa9ce0 "CannotActivate"}}
(gdb) up
#2 0x00002aaaaacf0f94 in AsyncAccessManager::final_state (this=0xe16230, active=true) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp:201
201 this->notify_waiters ();
(gdb) p this
$3 = (AsyncAccessManager * const) 0xe16230
(gdb) up
#3 0x00002aaaaacf20b2 in AsyncAccessManager::notify_child_death (this=0xe16230, pid=26884) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/AsyncAccessManager.cpp:485
485 this->final_state ();
(gdb) p this
$4 = (AsyncAccessManager * const) 0xe16230
(gdb) p final_state
$5 = {void (AsyncAccessManager * const, bool)} 0x2aaaaacf0f10 <AsyncAccessManager::final_state(bool)>
(gdb) up
#4 0x00002aaaaad00600 in ImR_Locator_i::child_death_i (this=0x7fffffffc0d0, name=0x8e1830 "taotester181", pid=26884) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:522
522 terminated = aam->notify_child_death (pid);
(gdb) p aam
$6 = {ptr_ = 0xe16230}
(gdb) up
#5 0x00002aaaaad007e7 in ImR_Locator_i::child_death_pid (this=0x7fffffffc0d0, _tao_rh=0x735eb8, name=0x8e1830 "taotester181", pid=26884)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:552
552 this->child_death_i (name, pid);
(gdb) p this
$7 = (ImR_Locator_i * const) 0x7fffffffc0d0
(gdb) up
#7 0x00002aaaacdca601 in TAO_ServantBase::asynchronous_upcall_dispatch (this=0x7fffffffc358, req=..., servant_upcall=0x7fffffffa5c0, derived_this=0x7fffffffc358)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Servant_Base.cpp:638
638 skel (req, servant_upcall, derived_this);
(gdb) p req
$8 = (TAO_ServerRequest &) @0x7fffffffac60: {mesg_base_ = 0x71db50, operation_ = 0x7fffffffb544 "child_death_pid", operation_len_ = 15, release_operation_ = false, 
forward_location_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x0}, is_forwarded_ = false, incoming_ = 0x7fffffffaef0, outgoing_ = 0x7fffffffafa0, response_expected_ = true, deferred_reply_ = false, 
sync_with_server_ = false, is_queued_ = false, is_dsi_ = false, reply_status_ = GIOP::NO_EXCEPTION, orb_core_ = 0x63b6b0, request_service_context_ = {
service_context_ = {<TAO::unbounded_value_sequence<IOP::ServiceContext>> = {impl_ = {maximum_ = 0, length_ = 0, buffer_ = 0xf4f2f8, release_ = true}}, 
_vptr.ServiceContextList = 0x2aaaadbb6180 <vtable for IOP::ServiceContextList+16>}}, reply_service_context_ = {service_context_ = {<TAO::unbounded_value_sequence<IOP::ServiceContext>> = {impl_ = {
maximum_ = 0, length_ = 0, buffer_ = 0x0, release_ = false}}, _vptr.ServiceContextList = 0x2aaaadbb6180 <vtable for IOP::ServiceContextList+16>}}, request_id_ = 5387, profile_ = {
orb_core_ = 0x63b6b0, discriminator_ = 0, object_key_extracted_ = true, object_key_ = {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 68, length_ = 68, 
buffer_ = 0x7fffffffb4fc "\024\001\017", release_ = false, mb_ = 0x0}, <No data fields>}, profile_ = {tag = 0, profile_data = {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 0, 
length_ = 0, buffer_ = 0x0, release_ = false, mb_ = 0x0}, _vptr.OctetSeq = 0x2aaaadbb7918 <vtable for CORBA::OctetSeq+16>}}, profile_index_ = 0, type_id_ = 0x0}, 
requesting_principal_ = {<TAO_Seq_Var_Base_T<CORBA::OctetSeq>> = {ptr_ = 0x0}, <No data fields>}, dsi_nvlist_align_ = 0, operation_details_ = 0x0, argument_flag_ = true, interceptor_count_ = 0, 
rs_pi_current_ = 0x0, caught_exception_ = 0x0, pi_reply_status_ = -1, transport_ = {prev_ = 0x0, curr_ = 0x687130}, clientCompressionEnablingPolicy_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x0}, 
clientCompressorIdLevelListPolicy_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x0}}
(gdb) p servant_upcall
$9 = (TAO::Portable_Server::Servant_Upcall *) 0x7fffffffa5c0
(gdb) p derived_this
$10 = (TAO_ServantBase *) 0x7fffffffc358
(gdb) up
#9 0x00002aaaacd86fb5 in TAO_Object_Adapter::do_dispatch (this=0x643de0, req=..., upcall=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Object_Adapter.cpp:1205
1205 upcall.servant ()->_dispatch(req, &upcall);
(gdb) p upcall
$11 = (TAO::Portable_Server::Servant_Upcall &) @0x7fffffffa5c0: {object_adapter_ = 0x643de0, poa_ = 0x673b90, servant_ = 0x7fffffffc358, 
state_ = TAO::Portable_Server::Servant_Upcall::SERVANT_LOCK_ACQUIRED, 
system_id_buf_ = "\000\000\000\000\001\000\000\000ImplRepo_Service\377\177\000\000\255\066\317\255\252*\000\000\240\246\377\377\377\177\000\000X\026d\000\000\000\000\000\001\000\000\000\003\000\000\000\b\365e\001\000\000\000\000@\246\377\377\377\177\000\000\232\070\317\252\252*\000\000\220\355<\001\000\000\000\000X\026d\000\000\000\000\000`\246\377\377\377\177\000\000 \250\377\377\377\177\000\000p\246\377\377\377\177\000\000X\232\314\255\252*\000\000\200\246\377\377\377\177\000\000 
\250\377\377\377\177\000\000\220\246\377\377\377\177\000\000Z\224\314\255\252*\000\000\030y\273\255\252*\000\000\000\002\000\000\f\000\000\000|\244\377\377\377\177\000\000\000\224\314\255\252*\000\000\000\000\000\000\000\000\000\000"..., system_id_ = {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 512, length_ = 24, 
buffer_ = 0x7fffffffa5dc "", release_ = false, mb_ = 0x0}, _vptr.OctetSeq = 0x2aaaadbb7918 <vtable for CORBA::OctetSeq+16>}, user_id_ = 0x7fffffffaa18, current_context_ = {poa_ = 0x673b90, 
object_id_buf_ = "ImplRepo_Service", '\000' <repeats 24 times>, 
"\377\377\000\000\377\377\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\377\377\377\377\252*\000\000\200\250\377\377\377\177\000\000M\376\307\255\252*\000\000\002\000\000\000\000\000\000\000\004\000\000\000#\000\000\000\260\250\377\377\377\177\000\000\220\"\314\255\252*\000\000\260\250\377\377\377\177\000\000\000\b\000\000#\000\000\000\300\250\377\377\377\177\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\030y\273\255\252*\000\000\000\002\000\000\004\000\000\000\270\246\377\377\377\177\000\000\000\250\377\377\377\177\000\000\000\000\000\000\000\000\000\000"..., 
object_id_ = {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 512, length_ = 16, buffer_ = 0x7fffffffa818 "ImplRepo_Service", 
release_ = false, mb_ = 0x0}, _vptr.OctetSeq = 0x2aaaadbb7918 <vtable for CORBA::OctetSeq+16>}, object_key_ = 0x7fffffffad10, servant_ = 0x7fffffffc358, priority_ = -1, 
previous_current_impl_ = 0x0, setup_done_ = true, tss_resources_ = 0x641850}, cookie_ = 0x0, operation_ = 0x0, active_object_map_entry_ = 0x6605f0, pre_invoke_state_ = {
state_ = TAO::Portable_Server::Servant_Upcall::Pre_Invoke_State::NO_ACTION_REQUIRED, original_native_priority_ = 0, original_CORBA_priority_ = 0}}
(gdb) [ req
Undefined command: "". Try "help".
(gdb) p req
$12 = (TAO_ServerRequest &) @0x7fffffffac60: {mesg_base_ = 0x71db50, operation_ = 0x7fffffffb544 "child_death_pid", operation_len_ = 15, release_operation_ = false, 
forward_location_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x0}, is_forwarded_ = false, incoming_ = 0x7fffffffaef0, outgoing_ = 0x7fffffffafa0, response_expected_ = true, deferred_reply_ = false, 
sync_with_server_ = false, is_queued_ = false, is_dsi_ = false, reply_status_ = GIOP::NO_EXCEPTION, orb_core_ = 0x63b6b0, request_service_context_ = {
service_context_ = {<TAO::unbounded_value_sequence<IOP::ServiceContext>> = {impl_ = {maximum_ = 0, length_ = 0, buffer_ = 0xf4f2f8, release_ = true}}, 
_vptr.ServiceContextList = 0x2aaaadbb6180 <vtable for IOP::ServiceContextList+16>}}, reply_service_context_ = {service_context_ = {<TAO::unbounded_value_sequence<IOP::ServiceContext>> = {impl_ = {
maximum_ = 0, length_ = 0, buffer_ = 0x0, release_ = false}}, _vptr.ServiceContextList = 0x2aaaadbb6180 <vtable for IOP::ServiceContextList+16>}}, request_id_ = 5387, profile_ = {
orb_core_ = 0x63b6b0, discriminator_ = 0, object_key_extracted_ = true, object_key_ = {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 68, length_ = 68, 
buffer_ = 0x7fffffffb4fc "\024\001\017", release_ = false, mb_ = 0x0}, <No data fields>}, profile_ = {tag = 0, profile_data = {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 0, 
length_ = 0, buffer_ = 0x0, release_ = false, mb_ = 0x0}, _vptr.OctetSeq = 0x2aaaadbb7918 <vtable for CORBA::OctetSeq+16>}}, profile_index_ = 0, type_id_ = 0x0}, 
requesting_principal_ = {<TAO_Seq_Var_Base_T<CORBA::OctetSeq>> = {ptr_ = 0x0}, <No data fields>}, dsi_nvlist_align_ = 0, operation_details_ = 0x0, argument_flag_ = true, interceptor_count_ = 0, 
rs_pi_current_ = 0x0, caught_exception_ = 0x0, pi_reply_status_ = -1, transport_ = {prev_ = 0x0, curr_ = 0x687130}, clientCompressionEnablingPolicy_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x0}, 
clientCompressorIdLevelListPolicy_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x0}}
(gdb) up
#10 0x00002aaaacd85153 in TAO_Object_Adapter::dispatch_servant (this=0x643de0, key=..., req=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Object_Adapter.cpp:360
360 do_dispatch (req, servant_upcall);
(gdb) p key
$13 = (const TAO::ObjectKey &) @0x7fffffffad10: {<TAO::unbounded_value_sequence<unsigned char>> = {maximum_ = 68, length_ = 68, buffer_ = 0x7fffffffb4fc "\024\001\017", release_ = false, 
mb_ = 0x0}, <No data fields>}
(gdb) p forward_to
$14 = {ptr_ = @0x7fffffffac58}
(gdb) up 
#11 0x00002aaaacd85ff4 in TAO_Object_Adapter::dispatch (this=0x643de0, key=..., request=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/PortableServer/Object_Adapter.cpp:773
773 result = this->dispatch_servant (key, request, forward_to);
(gdb) up
#12 0x00002aaaad87a384 in TAO_Adapter_Registry::dispatch (this=0x63bb68, key=..., request=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Adapter_Registry.cpp:107
107 int const r = this->adapters_[i]->dispatch (key, request, forward_to);
(gdb) p i
$16 = 0
(gdb) p this
$17 = (TAO_Adapter_Registry * const) 0x63bb68
(gdb) up
#13 0x00002aaaad8fceac in TAO_Request_Dispatcher::dispatch (this=0x63c440, orb_core=0x63b6b0, request=..., forward_to=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Request_Dispatcher.cpp:17
17 orb_core->adapter_registry ().dispatch (request.object_key (),
(gdb) p orb_core
$18 = (TAO_ORB_Core *) 0x63b6b0
(gdb) up
#14 0x00002aaaad88ffa1 in TAO_GIOP_Message_Base::process_request (this=0x71db50, transport=0x687130, cdr=..., output=..., parser=0x71db68)
at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/GIOP_Message_Base.cpp:991
991 this->orb_core_->request_dispatcher ()->dispatch (
(gdb) p transport
$19 = (TAO_Transport *) 0x687130
(gdb) p cdr
$20 = (TAO_InputCDR &) @0x7fffffffaef0: {<ACE_InputCDR> = {_vptr.ACE_InputCDR = 0x402d68 <vtable for TAO_InputCDR+16>, start_ = {_vptr.ACE_Message_Block = 0x2aaaadfb16c8 <vtable for ACE_Message_Block+16>, 
rd_ptr_ = 144, wr_ptr_ = 144, priority_ = 0, cont_ = 0x0, next_ = 0x0, prev_ = 0x0, flags_ = 1, data_block_ = 0x7fffffffb490, message_block_allocator_ = 0x0}, do_byte_swap_ = false, good_bit_ = true, 
major_version_ = 1 '\001', minor_version_ = 2 '\002', char_translator_ = 0x0, wchar_translator_ = 0x642200}, orb_core_ = 0x63b6b0, repo_id_map_ = {ptr_ = 0x0}, codebase_map_ = {ptr_ = 0x0}, 
value_map_ = {ptr_ = 0x0}}
(gdb) p output
$21 = (TAO_OutputCDR &) @0x7fffffffafa0: {<ACE_OutputCDR> = {start_ = {_vptr.ACE_Message_Block = 0x2aaaadfb16c8 <vtable for ACE_Message_Block+16>, rd_ptr_ = 0, wr_ptr_ = 0, priority_ = 0, cont_ = 0x0, 
next_ = 0x0, prev_ = 0x0, flags_ = 1, data_block_ = 0x7fffffffb060, message_block_allocator_ = 0x748040}, current_ = 0x7fffffffafa0, current_alignment_ = 0, current_is_writable_ = true, 
do_byte_swap_ = false, good_bit_ = true, memcpy_tradeoff_ = 256, major_version_ = 1 '\001', minor_version_ = 2 '\002', char_translator_ = 0x0, wchar_translator_ = 0x642200, static wchar_maxbytes_ = 2}, 
fragmentation_strategy_ = 0x71dde0, more_fragments_ = false, request_id_ = 0, stub_ = 0x0, message_semantics_ = {type_ = TAO_Message_Semantics::TAO_TWOWAY_REQUEST, 
mode_ = TAO_Message_Semantics::TAO_SYNCH_MODE}, timeout_ = 0x0, repo_id_map_ = {ptr_ = 0x0}, value_map_ = {ptr_ = 0x0}}
(gdb) p parser
$22 = (TAO_GIOP_Message_Generator_Parser *) 0x71db68
(gdb) up 
#15 0x00002aaaad88f586 in TAO_GIOP_Message_Base::process_request_message (this=0x71db50, transport=0x687130, qd=0x7fffffffb400) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/GIOP_Message_Base.cpp:721
721 return this->process_request (transport,
(gdb) p qd
$23 = (TAO_Queued_Data *) 0x7fffffffb400
(gdb) up
#16 0x00002aaaad92862c in TAO_Transport::process_parsed_messages (this=0x687130, qd=0x7fffffffb400, rh=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:2529
2529 if (this->messaging_object ()->process_request_message (this, qd) == -1)
(gdb) p this
$24 = (TAO_Transport * const) 0x687130
(gdb) p qd
$25 = (TAO_Queued_Data *) 0x7fffffffb400
(gdb) p rh
$26 = (TAO_Resume_Handle &) @0x7fffffffba50: {orb_core_ = 0x63b6b0, handle_ = 7, flag_ = TAO_Resume_Handle::TAO_HANDLE_ALREADY_RESUMED}
(gdb) up
#17 0x00002aaaad9282c1 in TAO_Transport::handle_input_parse_data (this=0x687130, rh=..., max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:2453
2453 if (this->process_parsed_messages (&qd, rh) == -1)
(gdb) p rh
$27 = (TAO_Resume_Handle &) @0x7fffffffba50: {orb_core_ = 0x63b6b0, handle_ = 7, flag_ = TAO_Resume_Handle::TAO_HANDLE_ALREADY_RESUMED}
(gdb) up
#18 0x00002aaaad926bab in TAO_Transport::handle_input (this=0x687130, rh=..., max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:1769
1769 if (this->handle_input_parse_data (rh, max_wait_time) == -1)
(gdb) up
#19 0x00002aaaad8862fb in TAO_Connection_Handler::handle_input_internal (this=0x71d718, h=7, eh=0x71d650) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:294
294 return_value = this->transport ()->handle_input (resume_handle);
(gdb) p resume_handle 
$28 = {orb_core_ = 0x63b6b0, handle_ = 7, flag_ = TAO_Resume_Handle::TAO_HANDLE_ALREADY_RESUMED}
(gdb) up
#20 0x00002aaaad886152 in TAO_Connection_Handler::handle_input_eh (this=0x71d718, h=7, eh=0x71d650) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:253
253 int const result = this->handle_input_internal (h, eh);
(gdb) p h
$29 = 7
(gdb) p eh
$30 = (ACE_Event_Handler *) 0x71d650
(gdb) up
#21 0x00002aaaad8acd53 in TAO_IIOP_Connection_Handler::handle_input (this=0x71d650, h=7) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/IIOP_Connection_Handler.cpp:405
405 return this->handle_input_eh (h, this);
(gdb) p this
$31 = (TAO_IIOP_Connection_Handler * const) 0x71d650
(gdb) up
#22 0x00002aaaadcbb309 in ACE_Dev_Poll_Reactor::upcall (this=0x641d90, event_handler=0x71d650, callback=&virtual table offset 48, handle=7) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.inl:84
84 status = (event_handler->*callback) (handle);
(gdb) up
#23 0x00002aaaadcb8a2e in ACE_Dev_Poll_Reactor::dispatch_io_event (this=0x641d90, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1299
1299 status = this->upcall (eh, callback, handle);
(gdb) p eh
$32 = (ACE_Event_Handler *) 0x71d650
(gdb) up
#24 0x00002aaaadcb858c in ACE_Dev_Poll_Reactor::dispatch (this=0x641d90, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1076
1076 result = this->dispatch_io_event (guard);
(gdb) p guard
$33 = (ACE_Dev_Poll_Reactor::Token_Guard &) @0x7fffffffbcf0: {token_ = @0x641db0, owner_ = 0}
(gdb) up
#25 0x00002aaaadcb8539 in ACE_Dev_Poll_Reactor::handle_events_i (this=0x641d90, max_wait_time=0x0, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1053
1053 return this->dispatch (guard);
(gdb) up
#26 0x00002aaaadcb838d in ACE_Dev_Poll_Reactor::handle_events (this=0x641d90, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1009
1009 return this->handle_events_i (max_wait_time, guard);
(gdb) up
#27 0x00002aaaad8c69b8 in ACE_Reactor::handle_events (this=0x641ff0, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Reactor.inl:185
185 return this->implementation ()->handle_events (max_wait_time);
(gdb) up
#28 0x00002aaaad8df2ac in TAO_ORB_Core::run (this=0x63b6b0, tv=0x0, perform_work=0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB_Core.cpp:2320
2320 result = r->handle_events (tv);
(gdb)





> Recently I observed the following seg fault:
> 
> (gdb) bt
> #0 0x00002aaaad88b5e7 in TAO_Exclusive_TMS::connection_closed (this=0x1d32c60) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Exclusive_TMS.cpp:170
> #1 0x00002aaaad925ca9 in TAO_Transport::send_connection_closed_notifications (this=0x1c76480) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:1387
> #2 0x00002aaaad88673c in TAO_Connection_Handler::close_connection_eh (this=0x1dcac78, eh=0x1dcabb0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:406
> #3 0x00002aaaad8acd1a in TAO_IIOP_Connection_Handler::close_connection (this=0x1dcabb0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/IIOP_Connection_Handler.cpp:399
> #4 0x00002aaaad886172 in TAO_Connection_Handler::handle_input_eh (this=0x1dcac78, h=43, eh=0x1dcabb0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:257
> #5 0x00002aaaad8acd53 in TAO_IIOP_Connection_Handler::handle_input (this=0x1dcabb0, h=43) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/IIOP_Connection_Handler.cpp:405
> #6 0x00002aaaadcbb309 in ACE_Dev_Poll_Reactor::upcall (this=0x641a50, event_handler=0x1dcabb0, callback=&virtual table offset 48, handle=43)
> at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.inl:84
> #7 0x00002aaaadcb8a2e in ACE_Dev_Poll_Reactor::dispatch_io_event (this=0x641a50, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1299
> #8 0x00002aaaadcb858c in ACE_Dev_Poll_Reactor::dispatch (this=0x641a50, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1076
> #9 0x00002aaaadcb8539 in ACE_Dev_Poll_Reactor::handle_events_i (this=0x641a50, max_wait_time=0x0, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1053
> #10 0x00002aaaadcb838d in ACE_Dev_Poll_Reactor::handle_events (this=0x641a50, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1009
> #11 0x00002aaaad8c69b8 in ACE_Reactor::handle_events (this=0x641cb0, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Reactor.inl:185
> #12 0x00002aaaad8df2ac in TAO_ORB_Core::run (this=0x63b730, tv=0x0, perform_work=0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB_Core.cpp:2320
> #13 0x00002aaaad8d3dc7 in CORBA::ORB::run (this=0x641cd0, tv=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB.cpp:188
> #14 0x00002aaaad8d3d5f in CORBA::ORB::run (this=0x641cd0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB.cpp:174
> #15 0x00002aaaaacff469 in ImR_Locator_i::run (this=0x7fffffffc0d0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:288
> #16 0x000000000040202a in run_standalone (opts=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator.cpp:54
> #17 0x00000000004022dd in main (argc=9, argv=0x7fffffffc608) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator.cpp:191
> (gdb) list
> 1392 {
> 1393 this->cleanup_queue_i ();
> 1394 }
> 1395
> 1396 int
> 1397 TAO_Transport::send_message_shared_i (TAO_Stub *stub,
> 1398 TAO_Message_Semantics message_semantics,
> 1399 const ACE_Message_Block *message_block,
> 1400 ACE_Time_Value *max_wait_time)
> 1401 {
> (gdb) list
> 165
> 166 void
> 167 TAO_Exclusive_TMS::connection_closed (void)
> 168 {
> 169 if (this->rd_ != 0)
> 170 this->rd_->connection_closed ();
> 171 }
> 172
> 173 TAO_END_VERSIONED_NAMESPACE_DECL
> (gdb) print rd_
> $6 = {_vptr.ACE_Intrusive_Auto_Ptr = 0x2aaaadbb0430 <vtable for ACE_Intrusive_Auto_Ptr<TAO_Reply_Dispatcher>+16>, rep_ = 0x1c1f920}
> (gdb) up
> #1 0x00002aaaad925ca9 in TAO_Transport::send_connection_closed_notifications (this=0x1c76480) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Transport.cpp:1387
> 1387 this->tms ()->connection_closed ();
> (gdb) p this
> $8 = (TAO_Transport * const) 0x1c76480
> (gdb) print tms()
> $9 = (TAO_Transport_Mux_Strategy *) 0x1d32c60
> (gdb) up
> #2 0x00002aaaad88673c in TAO_Connection_Handler::close_connection_eh (this=0x1dcac78, eh=0x1dcabb0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:406
> 406 this->transport ()->send_connection_closed_notifications ();
> (gdb) print this
> $10 = (TAO_Connection_Handler * const) 0x1dcac78
> (gdb) print transport()
> $11 = (TAO_Transport *) 0x1c76480
> (gdb) up
> #3 0x00002aaaad8acd1a in TAO_IIOP_Connection_Handler::close_connection (this=0x1dcabb0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/IIOP_Connection_Handler.cpp:399
> 399 return this->close_connection_eh (this);
> (gdb) print this
> $14 = (TAO_IIOP_Connection_Handler * const) 0x1dcabb0
> (gdb) up
> #4 0x00002aaaad886172 in TAO_Connection_Handler::handle_input_eh (this=0x1dcac78, h=43, eh=0x1dcabb0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/Connection_Handler.cpp:257
> 257 this->close_connection ();
> (gdb) print this
> $15 = (TAO_Connection_Handler * const) 0x1dcac78
> (gdb) up
> #5 0x00002aaaad8acd53 in TAO_IIOP_Connection_Handler::handle_input (this=0x1dcabb0, h=43) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/IIOP_Connection_Handler.cpp:405
> 405 return this->handle_input_eh (h, this);
> (gdb) print this
> $16 = (TAO_IIOP_Connection_Handler * const) 0x1dcabb0
> (gdb) up
> #6 0x00002aaaadcbb309 in ACE_Dev_Poll_Reactor::upcall (this=0x641a50, event_handler=0x1dcabb0, callback=&virtual table offset 48, handle=43) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.inl:84
> 84 status = (event_handler->*callback) (handle);
> (gdb) p event_handler
> $18 = (ACE_Event_Handler *) 0x1dcabb0
> (gdb) up
> #7 0x00002aaaadcb8a2e in ACE_Dev_Poll_Reactor::dispatch_io_event (this=0x641a50, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1299
> 1299 status = this->upcall (eh, callback, handle);
> (gdb) print this
> $19 = (ACE_Dev_Poll_Reactor * const) 0x641a50
> (gdb) print eh
> $20 = (ACE_Event_Handler *) 0x1dcabb0
> (gdb) print callback
> $21 = &virtual table offset 48
> (gdb) print handle
> $22 = 43
> (gdb) up
> #8 0x00002aaaadcb858c in ACE_Dev_Poll_Reactor::dispatch (this=0x641a50, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1076
> 1076 result = this->dispatch_io_event (guard);
> (gdb) print guard
> $23 = (ACE_Dev_Poll_Reactor::Token_Guard &) @0x7fffffffbcf0: {token_ = @0x641a70, owner_ = 0}
> (gdb) print this
> $24 = (ACE_Dev_Poll_Reactor * const) 0x641a50 
> (gdb) up
> #9 0x00002aaaadcb8539 in ACE_Dev_Poll_Reactor::handle_events_i (this=0x641a50, max_wait_time=0x0, guard=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1053
> 1053 return this->dispatch (guard);
> (gdb) print this
> $25 = (ACE_Dev_Poll_Reactor * const) 0x641a50
> (gdb) print guard
> $26 = (ACE_Dev_Poll_Reactor::Token_Guard &) @0x7fffffffbcf0: {token_ = @0x641a70, owner_ = 0}
> (gdb) up
> #10 0x00002aaaadcb838d in ACE_Dev_Poll_Reactor::handle_events (this=0x641a50, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Dev_Poll_Reactor.cpp:1009
> 1009 return this->handle_events_i (max_wait_time, guard);
> (gdb) print this
> $27 = (ACE_Dev_Poll_Reactor * const) 0x641a50
> (gdb) print max_wait_time
> $28 = (ACE_Time_Value *) 0x0
> (gdb) print guard
> $29 = {token_ = @0x641a70, owner_ = 0}
> (gdb) up
> #11 0x00002aaaad8c69b8 in ACE_Reactor::handle_events (this=0x641cb0, max_wait_time=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/ace/Reactor.inl:185
> 185 return this->implementation ()->handle_events (max_wait_time);
> (gdb) p this
> $30 = (ACE_Reactor * const) 0x641cb0
> (gdb) p implementation()
> $31 = (ACE_Reactor_Impl *) 0x641a50
> (gdb) p max_wait_time
> $32 = (ACE_Time_Value *) 0x0
> (gdb) up
> #12 0x00002aaaad8df2ac in TAO_ORB_Core::run (this=0x63b730, tv=0x0, perform_work=0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB_Core.cpp:2320
> 2320 result = r->handle_events (tv);
> (gdb) p r
> $33 = (ACE_Reactor *) 0x641cb0
> (gdb) print tv
> $34 = (ACE_Time_Value *) 0x0
> (gdb) print result
> $35 = 0
> (gdb) up
> #13 0x00002aaaad8d3dc7 in CORBA::ORB::run (this=0x641cd0, tv=0x0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB.cpp:188
> 188 this->orb_core ()->run (tv, 0);
> (gdb) p this
> $36 = (CORBA::ORB * const) 0x641cd0
> (gdb) up
> #14 0x00002aaaad8d3d5f in CORBA::ORB::run (this=0x641cd0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/tao/ORB.cpp:174
> 174 this->run (0);
> (gdb) p this
> $37 = (CORBA::ORB * const) 0x641cd0
> (gdb) up
> #15 0x00002aaaaacff469 in ImR_Locator_i::run (this=0x7fffffffc0d0) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator_i.cpp:288
> 288 this->orb_->run ();
> (gdb) p this
> $38 = (ImR_Locator_i * const) 0x7fffffffc0d0
> (gdb) p orb_
> $39 = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x641cd0}
> (gdb) up
> #16 0x000000000040202a in run_standalone (opts=...) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator.cpp:54
> 54 server.run ();
> (gdb) p server
> $40 = {<POA_ImplementationRepository::AMH_Locator> = {<POA_ImplementationRepository::AMH_AdministrationExt> = {<POA_ImplementationRepository::AMH_Administration> = {<TAO_ServantBase> = {<TAO_Abstract_ServantBase> = {_vptr.TAO_Abstract_ServantBase = 0x2aaaaaf4eb20 <vtable for ImR_Locator_i+312>}, ref_count_ = {<ACE_Atomic_Op_GCC<unsigned long>> = {value_ = 2}, <No data fields>}, 
> optable_ = 0x2aaaab41bef8 <tao_ImplementationRepository_AMH_Locator_optable>}, <No data fields>}, <No data fields>}, <No data fields>}, static debug_ = 0, 
> dsi_forwarder_ = {<TAO_DynamicImplementation> = {<TAO_ServantBase> = {<TAO_Abstract_ServantBase> = {_vptr.TAO_Abstract_ServantBase = 0x2aaaaaf4d858 <vtable for ImR_DSI_Forwarder+184>}, 
> ref_count_ = {<ACE_Atomic_Op_GCC<unsigned long>> = {value_ = 201}, <No data fields>}, optable_ = 0x0}, <No data fields>}, locator_ = @0x7fffffffc0d0, 
> poa_current_var_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x6617a0}, orb_ = 0x641cd0}, adapter_ = {<PortableServer::AdapterActivator> = {<CORBA::Object> = {
> _vptr.Object = 0x2aaaaaf4c758 <vtable for ImR_Adapter+424>, refcount_ = {<ACE_Atomic_Op_GCC<unsigned long>> = {value_ = 202}, <No data fields>}, is_local_ = true, is_evaluated_ = true, 
> ior_ = {<TAO_Var_Base_T<IOP::IOR>> = {ptr_ = 0x0}, <No data fields>}, orb_core_ = 0x0, protocol_proxy_ = 0x0, object_init_lock_ = {lock_ = {__data = {__lock = 0, __count = 0, __owner = 0, 
> __nusers = 0, __kind = 0, __spins = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, __align = 0}, removed_ = false}}, 
> _vptr.AdapterActivator = 0x2aaaaaf4c5c8 <vtable for ImR_Adapter+24>}, <CORBA::LocalObject> = {_vptr.LocalObject = 0x2aaaaaf4c610 <vtable for ImR_Adapter+96>}, default_servant_ = 0x7fffffffc0f8}, 
> ins_locator_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x627630}, pinger_ = {<ACE_Event_Handler> = {_vptr.ACE_Event_Handler = 0x2aaaaaf50010 <vtable for LiveCheck+16>, 
> reference_count_ = {<ACE_Atomic_Op_GCC<long>> = {value_ = 1}, <No data fields>}, priority_ = 0, reactor_ = 0x641cb0, reference_counting_policy_ = {<ACE_Event_Handler::Policy> = {
> _vptr.Policy = 0x2aaaadfb0b10 <vtable for ACE_Event_Handler::Reference_Counting_Policy+16>}, value_ = ACE_Event_Handler::Reference_Counting_Policy::DISABLED}}, entry_map_ = {
> table_allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, entry_allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, lock_ = {lock_ = 0}, 
> hash_key_ = {<No data fields>}, compare_keys_ = {<No data fields>}, table_ = 0x6279b0, total_size_ = 1024, cur_size_ = 12}, 
> per_client_ = {<ACE_Unbounded_Set_Ex<LiveEntry*, ACE_Unbounded_Set_Default_Comparator<LiveEntry*> >> = {head_ = 0x6274c0, cur_size_ = 0, 
> allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, comp_ = {<No data fields>}}, <No data fields>}, poa_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x661920}, 
> ping_interval_ = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = <same as static member of an already seen type>, static max_time = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = <same as static member of an already seen type>, static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 9223372036854775807, tv_usec = 999999}}, tv_ = {
> tv_sec = 0, tv_usec = 0}}, static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 0, tv_usec = 0}}, running_ = true, token_ = 15202, handle_timeout_busy_ = 1, 
> want_timeout_ = false, deferred_timeout_ = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = <same as static member of an already seen type>, static max_time = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = <same as static member of an already seen type>, static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 9223372036854775807, tv_usec = 999999}}, tv_ = {
> tv_sec = 0, tv_usec = 0}}, static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 0, tv_usec = 0}}, 
> removed_entries_ = {<ACE_Unbounded_Set_Ex<ACE_String_Base<char>, ACE_Unbounded_Set_Default_Comparator<ACE_String_Base<char> > >> = {head_ = 0x627590, cur_size_ = 0, 
> allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, comp_ = {<No data fields>}}, <No data fields>}}, 
> aam_active_ = {<ACE_Unbounded_Set_Ex<TAO_Intrusive_Ref_Count_Handle<AsyncAccessManager>, ACE_Unbounded_Set_Default_Comparator<TAO_Intrusive_Ref_Count_Handle<AsyncAccessManager> > >> = {head_ = 0x1d4b6a0, 
> cur_size_ = 20, allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, comp_ = {<No data fields>}}, <No data fields>}, 
> aam_terminating_ = {<ACE_Unbounded_Set_Ex<TAO_Intrusive_Ref_Count_Handle<AsyncAccessManager>, ACE_Unbounded_Set_Default_Comparator<TAO_Intrusive_Ref_Count_Handle<AsyncAccessManager> > >> = {
> head_ = 0x6275f0, cur_size_ = 0, allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, comp_ = {<No data fields>}}, <No data fields>}, 
> orb_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x641cd0}, root_poa_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x661920}, imr_poa_ = {<TAO_Base_var> = {<No data fields>}, ptr_ = 0x674dc0}, 
> repository_ = {counter_ = 0x6bfdf0, ptr_ = 0x68bb30}, opts_ = 0x7fffffffc3c0, lock_ = {lock_ = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0, __spins = 0, __list = {
> __prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, __align = 0}, removed_ = false}, shutdown_handler_ = {<ACE_Event_Handler> = {
> _vptr.ACE_Event_Handler = 0x2aaaaaf4e940 <vtable for ImR_Locator_i::Shutdown_Handler+16>, reference_count_ = {<ACE_Atomic_Op_GCC<long>> = {value_ = 1}, <No data fields>}, priority_ = 0, 
> reactor_ = 0x0, reference_counting_policy_ = {<ACE_Event_Handler::Policy> = {_vptr.Policy = 0x2aaaadfb0b10 <vtable for ACE_Event_Handler::Reference_Counting_Policy+16>}, 
> value_ = ACE_Event_Handler::Reference_Counting_Policy::DISABLED}}, owner_ = 0x7fffffffc0d0}}
> (gdb) up
> #17 0x00000000004022dd in main (argc=9, argv=0x7fffffffc608) at /tmp/tmp.DpUOGGQ919/ACE_wrappers/TAO/orbsvcs/ImplRepo_Service/ImR_Locator.cpp:191
> 191 return run_standalone (opts);
> (gdb) p opts
> $41 = {repo_mode_ = Options::REPO_XML_FILE, erase_repo_ = false, debug_ = 0, ior_output_file_ = {<ACE_String_Base_Const> = {static npos = 18446744073709551615}, 
> allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, len_ = 0, buf_len_ = 0, rep_ = 0x2aaaaaf533d0 <ACE_String_Base<char>::NULL_String_> "", release_ = false, 
> static NULL_String_ = 0 '\000'}, multicast_ = false, service_ = false, ping_external_ = false, ping_interval_ = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = {
> _vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = <same as static member of an already seen type>, static max_time = {
> _vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = <same as static member of an already seen type>, 
> static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 9223372036854775807, tv_usec = 999999}}, tv_ = {tv_sec = 0, tv_usec = 0}}, 
> static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 0, tv_usec = 0}}, ping_timeout_ = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = <same as static member of an already seen type>, static max_time = {
> _vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = <same as static member of an already seen type>, 
> static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 9223372036854775807, tv_usec = 999999}}, tv_ = {tv_sec = 0, tv_usec = 0}}, 
> static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 1, tv_usec = 0}}, startup_timeout_ = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = <same as static member of an already seen type>, static max_time = {
> _vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = <same as static member of an already seen type>, 
> static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 9223372036854775807, tv_usec = 999999}}, tv_ = {tv_sec = 0, tv_usec = 0}}, 
> static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 60, tv_usec = 0}}, readonly_ = false, service_command_ = Options::SC_NONE, cmdline_ = {<ACE_String_Base_Const> = {
> static npos = 18446744073709551615}, allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, len_ = 283, buf_len_ = 303, 
> rep_ = 0x627870 "/ACE+TAO/6.5.0/bin/tao_imr_locator -ORBListenEndpoints iiop://1.2@host1:59695 -ORBSvcConf /home/tmikola"..., release_ = true, static NULL_String_ = 0 '\000'}, persist_file_name_ = {<ACE_String_Base_Const> = {static npos = 18446744073709551615}, 
> allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, len_ = 115, buf_len_ = 116, 
> rep_ = 0x627510 "/taosvc/impl_repo.xml", release_ = true, static NULL_String_ = 0 '\000'}, 
> unregister_if_address_reused_ = false, lockout_ = false, imr_type_ = Options::STANDALONE_IMR, throw_shutdown_exceptions_ = false, pinger_ = 0x7fffffffc190, threads_ = 1, 
> ft_endpoint_ = {<ACE_String_Base_Const> = {static npos = 18446744073709551615}, allocator_ = 0x2aaaadfc2ce0 <ACE_Allocator::instance()::allocator_instance>, len_ = 0, buf_len_ = 0, 
> rep_ = 0x2aaaaaf533d0 <ACE_String_Base<char>::NULL_String_> "", release_ = false, static NULL_String_ = 0 '\000'}, ft_update_delay_ = {
> _vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, static zero = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = <same as static member of an already seen type>, static max_time = {_vptr.ACE_Time_Value = 0x2aaaadfbab50 <vtable for ACE_Time_Value+16>, 
> static zero = <same as static member of an already seen type>, static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 9223372036854775807, tv_usec = 999999}}, tv_ = {
> tv_sec = 0, tv_usec = 0}}, static max_time = <same as static member of an already seen type>, tv_ = {tv_sec = 0, tv_usec = 0}}}
> (gdb)
> 
> 
> 
> 
> 
> Dnia Wtorek, 3 Lipca 2018 09:44 Tomasz Mikolajczyk <miksiublues at wp.pl> napisał(a) 
> > I will try to do it. Could you please review the code once again. Could you also confirm that "-v 0" option disables the ping in 6.4.7 version? It was working before, and now I observed that tao crashes even with that option used and also there are some logs related to pinging. 
> > 
> > Regards,
> > Tomasz Mikolajczyk
> > 
> > 
> > Dnia Piątek, 29 Czerwca 2018 09:24 Johnny Willemsen <jwillemsen at remedy.nl> napisał(a) 
> > > Hi,
> > > 
> > > Thanks for using the PRF form. There is a lot of code in validate_ping,
> > > can you use gdb to see where it exactly crashes and what the values are
> > > of all variables?
> > > 
> > > Best regards,
> > > 
> > > Johnny Willemsen
> > > Remedy IT
> > > Postbus 81 | 6930 AB Westervoort | The Netherlands
> > > http://www.remedy.nl
> > > 
> > > On 06/28/2018 09:47 PM, Tomasz Mikolajczyk wrote:
> > > >  TAO VERSION: 2.4.6
> > > >  ACE VERSION: 6.4.6
> > > > 
> > > > HOST MACHINE and OPERATING SYSTEM:
> > > > Intel, cpu 16 cores, mem 128GB, Linux RHEL 7.3
> > > > 
> > > > COMPILER NAME AND VERSION (AND PATCHLEVEL):
> > > > gcc 8.1
> > > > 
> > > > THE $ACE_ROOT/ace/config.h FILE:
> > > > ace/config-linux.h
> > > > 
> > > > THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE
> > > > include/makeinclude/platform_macros.GNU
> > > > Additional flags:
> > > > debug=0
> > > > ssl=1
> > > > zlib=1
> > > > bzip2=1
> > > > c++14=1
> > > > install_rpath=0
> > > > CPP_FLAGS += -DACE_ANY_OPS_USE_NAMESPACE
> > > > 
> > > > SYNOPSIS:
> > > > segmentation fault of "tao imr locator"
> > > > 
> > > > DESCRIPTION:
> > > > 
> > > > The following is an OCR-ed subset of previously sent png images:
> > > > gdb's backtrace:
> > > > 
> > > > 1 Program received signal SIGSEGV, Segmentation fault.
> > > > 2 0x00007f34abfd1257 in LiveEntry::validate_ping(bool&, ACE_Time_Value&)
> > > > 3 from /tao/6.4.6/lib/libTAO_1mR_Locator.so.2.4.6
> > > > 4 (gdb) where
> > > > 5 #0 0x00007f34abfd1257 in LiveEntry::validate_ping(bool&, ACE_Time_Value&) () from /tao/6.4.6/lib/libTAO_1mR_Locator.so.2.4.6
> > > > 6 #1 0x00007f34abfd1ao1 in LiveCheck::handle_timeout(ACE_Time_Value const&, void const*) () from /tao/6.4.6/lib/libTAO_1mR_Locator.so.2.4.6
> > > > 7 #2 0x00007f34a92eaa95 in ACE_Ęvent_Handler_Handle_Timeout_Upcall::timeout(ACE;Abstract_Timer_Queue<ACE_Ęvent_Handler*>&, ACE_Ęvent_Handler*, void const*,
> > > > int, ACE_Time_Value const&) () from /tao/6.4.6/lib/libACE.so.6.4.6
> > > > 8 #3 0x00007f34a96c615c in ACE_Iimer_Queue_T<ACE_Ęvent_Handler*, ACE_Ęvent_Handler_Handle_Timeout_Upcall, ACE_Recursive_Thread;Mutex,
> > > > ACE_System;Time_Policy>::expire_single(ACE_Command;Base&) () from /tao/6.4.6/lib/libTAO.so.2.4.6
> > > > 9 #4 0x00007f34a92e54fd in ACE_Dev_Poll_Reactor::dispatch_timer_handler(ACE_Dev_Poll_Reactor::Token_Guard&)
> > > > 10 from /tao/6.4.6/lib/libACE.so.6.4.6
> > > > 11 #5 0x00007f34a92e6711 in ACE_Dev_Poll_Reactor::dispatch(ACE_Dev_Poll_Reactor::Token_Guard&) () from /tao/6.4.6/lib/libACE.so.6.4.6
> > > > 12 #6 0x00007f34a92e7d2e in ACE_Dev_Poll_Reactor::handle_events(ACE_Time_Value*) () from /tao/6.4.6/lib/libACE.so.6.4.6
> > > > 13 #7 0x00007f34a969168d in TAO_ORB_Core::run(ACE_Time_Value*, int) () from /tao/6.4.6/lib/libTAO.so.2.4.6
> > > > 14 #8 0x00007f34abfca580 in ImR_Locator_i::run() () from /tao/6.4.6/lib/libTAO_1mR_Locator.so.2.4.6
> > > > 15 #9 0x0000000000401d16 in run_standalone(options&)
> > > > 16 #10 0x0000000000401b3f in main
> > > > 17 (gdb)
> > > > 18
> > > > 
> > > > It looks like this concerns the tao pinging mechanism. With the pinging mechanism (-v 0) I do not observe the segmentation fault.
> > > > The following shows all parameters when starting up the services:
> > > > 
> > > > $ ps aux lgrep tao
> > > > 
> > > > dev 7633 0.0 0.0 59128 7100 ? S Jun24 0:00 /tao/6.1.8/bin/tao_cosnaming -ORBListenEndPoints iiop://l.2@host1 -ORBDefaultInitRef corbaloc:iiop:1.2 at host1:59695 -ORBUseIMR 1 -ORBLogFile /tao/6.1.8/log/Naming_5ervice.log -u /tao/6.1.8/Name5ervice -o /tao/6.1.8/name_service.ior
> > > > dev 23112 0.4 0.3 983116 922884 ? Ss Jun24 19:56 /tao/6.1.8/bin/tao_imr_locator -ORBListenEndpoints iiop://l.2@host1:59695 -x /tao/6.1.8/ImpRep/impl_repo.xm1 -ORBSvcConf /svc.conf.poll -ORBVerboseLogging 1
> > > > dev 23117 0.0 0.0 64012 7504 ? Ss Jun24 0:11 /tao/6.1.8/bin/tao_imr_activator -l -ORBDefaultInitRef corbaloc:iiop:1.2 at host1:59695 -ORBSvcConf /svc.conf.poll -ORBVerboseLogging 1
> > > > 
> > > > 
> > > > Regards,
> > > > Tomasz Mikolajczyk
> > > > 
> > > > 
> > > > 
> > > > 
> > > > Dnia Czwartek, 28 Czerwca 2018 08:05 Johnny Willemsen <jwillemsen at remedy.nl> napisał(a) 
> > > >> Hi,
> > > >>
> > > >> Please us the problem-report-form that is in the root of the package and
> > > >> provide the output as txt, looks the png images are dropped by the list
> > > >> server but these also make it hard to do so some quick searches.  It
> > > >> would help when you can extend/add a unit test under
> > > >> TAO/orbsvcs/tests/ImplRepo to reproduce your problem.
> > > >>
> > > >> Best regards,
> > > >>
> > > >> Johnny Willemsen
> > > >> Remedy IT
> > > >> Postbus 81 | 6930 AB Westervoort | The Netherlands
> > > >> http://www.remedy.nl
> > > >>
> > > >> On 06/27/2018 11:37 PM, Tomasz Mikolajczyk wrote:
> > > >>> Hi,
> > > >>>
> > > >>> I encountered TAO imr locator seg fault. PFA all the possible information collected. Unfortunately due to technical reasons I'm not able to send them as a single text file. Tao processes are running on localhost. processes just talk to themselves executing simple methods defined in IDL files.
> > > >>>
> > > >>> Probably the most interested files at the beginning will be:
> > > >>> tao_seg_fault01.png - gdb's backtrace 
> > > >>> tao_seg_fault21.png  - shows options passed when starting the tao processes
> > > >>>
> > > >>> I was comparing the changes between ACE+TAO 6.4.7 version and ACE+TAO  6.5 and I do not see any potential fix for this issue.
> > > >>>
> > > >>> Should you need further details please let me know.
> > > >>>
> > > >>> Regards,
> > > >>> Tomasz Mikolajczyk
> > > >>>
> > > >>>
> > > >>> _______________________________________________
> > > >>> tao-bugs mailing list
> > > >>> tao-bugs at list.isis.vanderbilt.edu
> > > >>> http://list.isis.vanderbilt.edu/cgi-bin/mailman/listinfo/tao-bugs
> > > > 
> > > > 
> > > > 
> > > > 
> > 
> > 
> > 
> > _______________________________________________
> > tao-bugs mailing list
> > tao-bugs at list.isis.vanderbilt.edu
> > http://list.isis.vanderbilt.edu/cgi-bin/mailman/listinfo/tao-bugs






More information about the tao-bugs mailing list