{"record":{"id":"ba66d3d5432dc1ac","repo":"apache/hadoop","slug":"hdfsconnrelease-usrname-s-freeing-condemend-fs","errorCode":null,"errorMessage":"hdfsConnRelease(usrname=%s): freeing condemend FS!\n","messagePattern":"hdfsConnRelease\\(usrname=(.+?)\\): freeing condemend FS!\n","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/fuse-dfs/fuse_connect.c","lineNumber":632,"sourceCode":"  if (ret) {\n    fprintf(stderr, \"fuseConnectTest failed with error code %d\\n\", ret);\n    return ret;\n  }\n  hdfsConnRelease(conn);\n  return 0;\n}\n\nstruct hdfs_internal* hdfsConnGetFs(struct hdfsConn *conn)\n{\n  return conn->fs;\n}\n\nvoid hdfsConnRelease(struct hdfsConn *conn)\n{\n  pthread_mutex_lock(&gConnMutex);\n  conn->refcnt--;\n  if ((conn->refcnt == 0) && (conn->condemned)) {\n    fprintf(stderr, \"hdfsConnRelease(usrname=%s): freeing condemend FS!\\n\",\n      conn->usrname);\n    /* Notice that we're not removing the connection from gConnTree here.\n     * If the connection is condemned, it must have already been removed from\n     * the tree, so that no other threads start using it.\n     */\n    hdfsConnFree(conn);\n  }\n  pthread_mutex_unlock(&gConnMutex);\n}\n\n/**\n * Get the monotonic time.\n *\n * Unlike the wall-clock time, monotonic time only ever goes forward.  If the\n * user adjusts the time, the monotonic time will not be affected.\n *\n * @return        The monotonic time\n */","sourceCodeStart":614,"sourceCodeEnd":650,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/fuse-dfs/fuse_connect.c#L614-L650","documentation":"Error \"hdfsConnRelease(usrname=%s): freeing condemend FS!\n\" thrown in apache/hadoop.","triggerScenarios":"Thrown at hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/fuse-dfs/fuse_connect.c:632 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ensure the connection table no longer references the condemned connection before freeing; if seen repeatedly, restart fuse-dfs to clear connection state."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2add9630210752f88ceb1bb74eb65e37bf41da8e","analyzedAt":"2026-08-22T19:55:07.957Z","schemaVersion":2},"datasetVersion":"2026-08-23T01:17:44.959Z"}