[ 
https://issues.apache.org/jira/browse/HADOOP-19494?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17939696#comment-17939696
 ] 

ASF GitHub Bot commented on HADOOP-19494:
-----------------------------------------

bhattmanish98 commented on code in PR #7496:
URL: https://github.com/apache/hadoop/pull/7496#discussion_r2021067903


##########
hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/services/AbfsBlobClient.java:
##########
@@ -1528,10 +1528,31 @@ public AbfsRestOperation deleteBlobPath(final Path 
blobPath,
    */
   @Override
   public boolean checkIsDir(AbfsHttpOperation result) {
-    String resourceType = result.getResponseHeader(X_MS_META_HDI_ISFOLDER);
+    String dirHeaderName = getHeaderNameIgnoreCase(result, 
X_MS_META_HDI_ISFOLDER);
+    // If the header is not found, return false (not a directory)
+    if (dirHeaderName == null) {
+      return false;
+    }
+
+    String resourceType = result.getResponseHeader(dirHeaderName);
     return resourceType != null && resourceType.equals(TRUE);

Review Comment:
   In the case of an empty string, resourceType.equals(TRUE) will return false, 
so there’s no need for an explicit check for an empty string.
   The null case occurs when the header we are looking for does not exist, 
which is why this check is needed.





> ABFS: Fix Case Sensitivity Issue for hdi_isfolder metadata
> ----------------------------------------------------------
>
>                 Key: HADOOP-19494
>                 URL: https://issues.apache.org/jira/browse/HADOOP-19494
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/azure
>    Affects Versions: 3.5.0
>            Reporter: Manish Bhatt
>            Assignee: Manish Bhatt
>            Priority: Major
>              Labels: pull-request-available
>
> In the blob endpoint, we determine whether the path is a file, or a directory 
> based on the metadata attribute hdi_isfolder. When creating a directory, we 
> set hdi_isfolder to true. Currently, our method for checking if the path is a 
> directory involves a case-sensitive equality check. Consequently, if someone 
> configures a directory with Hdi_isfolder, the driver will not recognize that 
> path as a directory. We need to address this issue because, in the backend, 
> hdi_isfolder and Hdi_isfolder are considered the same metadata attribute. 
> Therefore, the solution involves modifying our equality check to be 
> case-insensitive, ensuring that the driver correctly identifies directories 
> regardless of case variations in the metadata attribute.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to