You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Babneet Singh (Jira)" <ji...@apache.org> on 2020/04/10 17:32:00 UTC

[jira] [Created] (HDFS-15270) Account for *env == NULL in hdfsThreadDestructor

Babneet Singh created HDFS-15270:
------------------------------------

             Summary: Account for *env == NULL in hdfsThreadDestructor
                 Key: HDFS-15270
                 URL: https://issues.apache.org/jira/browse/HDFS-15270
             Project: Hadoop HDFS
          Issue Type: Bug
         Environment: Please refer to the "steps to reproduce" the failure in https://github.com/eclipse/openj9/issues/7752#issue-521732953.
            Reporter: Babneet Singh


OpenJ9 JVM properly terminates the thread before hdfsThreadDestructor is
invoked. JNIEnv is a mirror of J9VMThread in OpenJ9. After proper thread
termination, accessing JNIEnv in hdfsThreadDestructor (*env)->GetJavaVM,
yields a SIGSEGV since *env is NULL after thread cleanup is performed.

The main purpose of hdfsThreadDestructor is to invoke
DetachCurrentThread, which performs thread cleanup in OpenJ9. Since
OpenJ9 performs thread cleanup before hdfsThreadDestructor is invoked,
hdfsThreadDestructor should account for *env == NULL and skip
DetachCurrentThread.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org