hadoop/hadoop-hdfs-project
Babneet Singh d1e5e393c3 HDFS-15270. Account for *env == NULL in hdfsThreadDestructor (#1951)
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.

Signed-off-by: Babneet Singh <sbabneet@ca.ibm.com>
(cherry picked from commit 1996351b0b)
2020-05-11 10:45:57 -07:00
..
hadoop-hdfs HDFS-15338. listOpenFiles() should throw InvalidPathException in case of invalid paths. Contributed by Jinglun. 2020-05-11 16:52:23 +05:30
hadoop-hdfs-client HDFS-15338. listOpenFiles() should throw InvalidPathException in case of invalid paths. Contributed by Jinglun. 2020-05-11 16:52:23 +05:30
hadoop-hdfs-httpfs Preparing for 3.3.1 development 2020-04-30 13:33:42 +09:00
hadoop-hdfs-native-client HDFS-15270. Account for *env == NULL in hdfsThreadDestructor (#1951) 2020-05-11 10:45:57 -07:00
hadoop-hdfs-nfs Preparing for 3.3.1 development 2020-04-30 13:33:42 +09:00
hadoop-hdfs-rbf Preparing for 3.3.1 development 2020-04-30 13:33:42 +09:00
pom.xml Preparing for 3.3.1 development 2020-04-30 13:33:42 +09:00