Greg Mann created MESOS-3264:
--------------------------------

             Summary: JVM can exit prematurely following framework teardown
                 Key: MESOS-3264
                 URL: https://issues.apache.org/jira/browse/MESOS-3264
             Project: Mesos
          Issue Type: Bug
          Components: java api
    Affects Versions: 0.23.0, 0.24.0
            Reporter: Greg Mann
            Priority: Minor


In Java frameworks, it is possible for the JVM to begin exiting the program - 
via {{System.exit()}}, for example - while teardown of native objects such as 
the SchedulerDriver and associated Executors is still in progress. 
{{SchedulerDriver::stop()}} will return after it has sent messages to other 
actors to begin their teardown, meanwhile the JVM is free to terminate the 
program and thus begin executing native object destructors while those objects 
are still in use, potentially leading to a segfault.

This has manifested itself in flaky tests from the ExamplesTest suite (see 
MESOS-830 and MESOS-1013), as mutexes from glog are destroyed while the 
framework is still shutting down and attempting to log.

Ideally, a mechanism would exist to block the Java code until a confirmation 
that framework teardown is complete has been received.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to