[ https://issues.apache.org/jira/browse/HDFS-14015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16687362#comment-16687362 ]
Pranay Singh edited comment on HDFS-14015 at 11/15/18 1:31 AM: --------------------------------------------------------------- Missing NULL check ------------------------------------------------ cls = (*env)->FindClass(env, "java/lang/Thread"); if (cls == NULL) ==> missing mth = (*env)->GetStaticMethodID(env, cls, "currentThread", "()Ljava/lang/Thread;"); mth = (*env)->GetMethodID(env, cls, "toString", "()Ljava/lang/String;"); thr_name_str = (*env)->GetStringUTFChars(env, thr_name, NULL); Return type on success could be JNI_OK -------------------------------------------------------- + ret = (*vm)->DetachCurrentThread(vm); + + if (ret != 0) { was (Author: pranay_singh): Missing NULL check ------------------------------------------------ cls = (*env)->FindClass(env, "java/lang/Thread"); mth = (*env)->GetStaticMethodID(env, cls, "currentThread", "()Ljava/lang/Thread;"); mth = (*env)->GetMethodID(env, cls, "toString", "()Ljava/lang/String;"); thr_name_str = (*env)->GetStringUTFChars(env, thr_name, NULL); Return type on success could be JNI_OK -------------------------------------------------------- + ret = (*vm)->DetachCurrentThread(vm); + + if (ret != 0) { > Improve error handling in hdfsThreadDestructor in native thread local storage > ----------------------------------------------------------------------------- > > Key: HDFS-14015 > URL: https://issues.apache.org/jira/browse/HDFS-14015 > Project: Hadoop HDFS > Issue Type: Improvement > Components: native > Affects Versions: 3.0.0 > Reporter: Daniel Templeton > Assignee: Daniel Templeton > Priority: Major > Attachments: HDFS-14015.001.patch, HDFS-14015.002.patch, > HDFS-14015.003.patch, HDFS-14015.004.patch, HDFS-14015.005.patch, > HDFS-14015.006.patch, HDFS-14015.007.patch, HDFS-14015.008.patch, > HDFS-14015.009.patch, HDFS-14015.010.patch, HDFS-14015.011.patch > > > In the hdfsThreadDestructor() function, we ignore the return value from the > DetachCurrentThread() call. We are seeing cases where a native thread dies > while holding a JVM monitor, and it doesn't release the monitor. We're > hoping that logging this error instead of ignoring it will shed some light on > the issue. In any case, it's good programming practice. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org