Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Implemented
    • None
    • 1.4.0
    • None

    Description

      The target of this task is to deprecate the `lookupFile` interface and use GetKeyInfo for the OFS use case.

      The gap between OFS and object storage use cases (like S3) is that due to a file system nature, OFS has to answer the file read requests from its client. A file read input is a file path and OFS needs to be able to decide if the given path is a valid file. To be specific, if the given path is not a file (but a directory), OFS should return an error. Reading empty files is a valid use case.

      // throws IOException if the given path is not a file.
      FileSystem.open(path)
      

      The lookupKey API returns the same content for an empty file and directory.

      Today, this is solved in Ozone by the separated lookupFile API, detecting if the given key is a directory and throwing an error on server-side.

      throw new OMException(ResultCodes.NOT_A_FILE);
      

      We designed GetKeyInfo to replace lookupKey and it inherits the same limit.

      Attachments

        Issue Links

          Activity

            People

              duongnguyen Duong
              duongnguyen Duong
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: