[
https://issues.apache.org/jira/browse/CELIX-175?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bjoern Petri closed CELIX-175.
------------------------------
Resolution: Fixed
> segfault during shutdown when calculator is already stopped
> -----------------------------------------------------------
>
> Key: CELIX-175
> URL: https://issues.apache.org/jira/browse/CELIX-175
> Project: Celix
> Issue Type: Bug
> Environment: Revision: 1634019
> Reporter: Bjoern Petri
>
> Using the remote-services-cfg deployment, I can reproduce a segfault when
> stopping the apache_celix_remoting_calculator_impl manually before shutting
> down:
> {code}
> -> ps
> ID State Name
> 0 Active framework
> 1 Active apache_celix_rsa_discovery_configured
> 2 Active apache_celix_rs_topology_manager
> 3 Active apache_celix_remote_service_admin_http
> 4 Active apache_celix_remoting_calculator_impl
> 5 Active apache_celix_shell
> 6 Active apache_celix_shell_tui
> 7 Active apache_celix_log_service
> 8 Active apache_celix_log_writer
> 9 Active apache_celix_remoting_calculator_endpoint
> 10 Active apache_celix_remoting_calculator2_endpoint
> -> stop 4
> INFO: TOPOLOGY_MANAGER: Remove exported service (6).
> INFO: TOPOLOGY_MANAGER: listener with filter
> "(&(objectClass=remote_endpoint)(remote.interface=org.apache.celix.calc.api.Calculator))"
> removed.
> LogWriter: BUNDLE_EVENT_STOPPED from apache_celix_remoting_calculator_endpoint
> LogWriter: BUNDLE_EVENT_UNRESOLVED from
> apache_celix_remoting_calculator_endpoint
> LogWriter: BUNDLE_EVENT_UNINSTALLED from
> apache_celix_remoting_calculator_endpoint
> INFO: TOPOLOGY_MANAGER: Remove imported service
> (org.apache.celix.calc.api.Calculator; fd7d5d34-aa36-4ecc-a7d7-dbb9bf63ea8d).
> INFO: Endpoint for org.apache.celix.calc.api.Calculator, with filter "(null)"
> removed...
> INFO: removing endpoint "fd7d5d34-aa36-4ecc-a7d7-dbb9bf63ea8d"...
> INFO: TOPOLOGY_MANAGER: Remove exported service (8).
> INFO: TOPOLOGY_MANAGER: listener with filter
> "(&(objectClass=remote_endpoint)(remote.interface=org.apache.celix.calc.api.Calculator2))"
> removed.
> LogWriter: BUNDLE_EVENT_STOPPED from
> apache_celix_remoting_calculator2_endpoint
> LogWriter: BUNDLE_EVENT_UNRESOLVED from
> apache_celix_remoting_calculator2_endpoint
> LogWriter: BUNDLE_EVENT_UNINSTALLED from
> apache_celix_remoting_calculator2_endpoint
> INFO: TOPOLOGY_MANAGER: Remove imported service
> (org.apache.celix.calc.api.Calculator2; 62d9a3c8-0340-4a69-95c3-325a0f5d1be4).
> INFO: Endpoint for org.apache.celix.calc.api.Calculator2, with filter
> "(null)" removed...
> INFO: removing endpoint "62d9a3c8-0340-4a69-95c3-325a0f5d1be4"...
> -> LogWriter: BUNDLE_EVENT_STOPPED from apache_celix_remoting_calculator_impl
> -> stop 0
> INFO: FRAMEWORK: Start shutdownthread
> [New Thread 0x7fff567ec700 (LWP 10466)]
> -> INFO: FRAMEWORK: Shutdown
> INFO: TOPOLOGY_MANAGER: listener with filter "(objectClass=shellService)"
> removed.
> LogWriter: BUNDLE_EVENT_STOPPED from framework
> [Thread 0x7fff577ee700 (LWP 10462) exited]
> LogWriter: BUNDLE_EVENT_STOPPED from apache_celix_shell_tui
> DEBUG: TOPOLOGY_MANAGER: Ignore myself.
> INFO: TOPOLOGY_MANAGER: Removed RSA
> *** Error in `/home/bjoern/Development/build.current/launcher/celix': double
> free or corruption (out): 0x0000000000647cb0 ***
> [..]
> (gdb) bt
> #0 0x00007ffff6c84877 in raise () from /lib64/libc.so.6
> #1 0x00007ffff6c85f68 in abort () from /lib64/libc.so.6
> #2 0x00007ffff6cc4a54 in __libc_message () from /lib64/libc.so.6
> #3 0x00007ffff6ccbd78 in _int_free () from /lib64/libc.so.6
> #4 0x00007ffff7969b73 in arrayList_destroy (list=0x641070)
> at
> /home/bjoern/Development/celix.current/utils/private/src/array_list.c:53
> #5 0x00007fffef7d108c in topologyManager_rsaRemoved (handle=0x61a320,
> reference=0x63c0b0,
> service=0x632290)
> at
> /home/bjoern/Development/celix.current/remote_services/topology_manager/private/src/topology_manager.c:224
> #6 0x00007ffff7bb3c75 in serviceTracker_untrack (tracker=0x61a6f0,
> reference=0x63c0b0, event=0x0)
> at
> /home/bjoern/Development/celix.current/framework/private/src/service_tracker.c:325
> #7 0x00007ffff7bb2f54 in serviceTracker_close (tracker=0x61a6f0)
> at
> /home/bjoern/Development/celix.current/framework/private/src/service_tracker.c:135
> #8 0x00007fffef7d3688 in bundleActivator_stop (userData=0x618490,
> context=0x619c90)
> at
> /home/bjoern/Development/celix.current/remote_services/topology_manager/private/src/activator.c:175
> #9 0x00007ffff7b9e8b5 in fw_stopBundle (framework=0x60e200, bundle=0x623040,
> record=false)
> at
> /home/bjoern/Development/celix.current/framework/private/src/framework.c:843
> #10 0x00007ffff7ba402d in framework_shutdown (framework=0x60e200)
> at
> /home/bjoern/Development/celix.current/framework/private/src/framework.c:1977
> #11 0x00007ffff6a39ee5 in start_thread () from /lib64/libpthread.so.0
> #12 0x00007ffff6d43b8d in clone () from /lib64/libc.so.6
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)