[
https://issues.apache.org/jira/browse/MESOS-8729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16416273#comment-16416273
]
Benjamin Mahler commented on MESOS-8729:
----------------------------------------
A couple of additional finalization related issues I noticed while trying to
write a small test to reproduce this:
(1) re-initialization after finalize is not supported and crashes
(2) things like spawn() implicitly re-initialize and therefore if things like
spawn get called post-finalize() they will crash
(3) even without implicit initialization, a spawn will access the process
manager pointer and crash
(4) double-finalize() will crash the program.
Before resolving this particular bug, will create an epic to track these other
issues if one doesn't already exist. cc [~kaysoky]
> Libprocess: deadlock in process::finalize
> -----------------------------------------
>
> Key: MESOS-8729
> URL: https://issues.apache.org/jira/browse/MESOS-8729
> Project: Mesos
> Issue Type: Bug
> Components: libprocess
> Affects Versions: 1.6.0
> Environment: The issue has been reproduced on Ubuntu 16.04, master
> branch, commit `42848653b2`.
> Reporter: Andrei Budnik
> Priority: Major
> Labels: deadlock, libprocess
> Attachments: deadlock.txt
>
>
> Since we are calling
> [`libprocess::finalize()`|https://github.com/apache/mesos/blob/02ebf9986ab5ce883a71df72e9e3392a3e37e40e/src/slave/containerizer/mesos/io/switchboard_main.cpp#L157]
> before returning from the IOSwitchboard's main function, we expect that all
> http responses are going to be sent back to clients before IOSwitchboard
> terminates. However, after [adding|https://reviews.apache.org/r/66147/]
> `libprocess::finalize()` we have seen that IOSwitchboard might get stuck in
> `libprocess::finalize()`. See attached stacktrace.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)