Uploaded image for project: 'Apache Ozone'
  1. Apache Ozone
  2. HDDS-6825

FS Ops fail on FSO Bucket via s3a scheme

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Critical
    • Resolution: Unresolved
    • 1.3.0
    • None
    • S3

    Description

      Steps to reproduce :

      1. Create an s3v bucket with FILE_SYSTEM_OPTIMIZED as Bucket Layout

      # /opt/cloudera/parcels/CDH/bin/ozone sh  bucket info
       s3v/fso
      {
        "metadata" : \{ },
        "volumeName" : "s3v",
        "name" : "fso",
        "storageType" : "DISK",
        "versioning" : false,
        "usedBytes" : 174,
        "usedNamespace" : 1,
        "creationTime" : "2022-06-02T16:24:58.759Z",
        "modificationTime" : "2022-06-02T16:24:58.759Z",
        "quotaInBytes" : -1,
        "quotaInNamespace" : -1,
        "bucketLayout" : "FILE_SYSTEM_OPTIMIZED",
        "owner" : "hrt_qa",
        "link" : false
      }

      2. Get s3 credentials

      3. Run FS operation via s3a scheme :

      /opt/cloudera/parcels/CDH/bin/hadoop fs -Dfs.s3a.access.key=hrt_qa@ROOT.HWX.SITE -Dfs.s3a.secret.key=32b5a586d7c35e1a0aa93776ce2500d07edd34ae9c3df2f9658bd705bf0a33ad -Dfs.s3a.endpoint=https://quasar-unoxvj-6.quasar-unoxvj.root.hwx.site:9879 -Dfs.s3a.connection.ssl.enabled=true -Dfs.s3a.change.detection.mode=none -Dfs.s3a.change.detection.version.required=false -Dfs.s3a.path.style.access=true -mkdir s3a://fso/test \{code}
      S3G Logs
      {code:java}
      2022-06-02 16:48:10,808 WARN org.eclipse.jetty.server.HttpChannel: handleException /fso/ FILE_NOT_FOUND org.apache.hadoop.ozone.om.exceptions.OMException: Unable to get file status: volume: s3v bucket: fso key: test/
      2022-06-02 16:48:10,809 WARN org.eclipse.jetty.server.HttpChannelState: unhandled due to prior sendError
      javax.servlet.ServletException: javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: FILE_NOT_FOUND org.apache.hadoop.ozone.om.exceptions.OMException: Unable to get file status: volume: s3v bucket: fso key: test/
              at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:162)
              at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
              at org.eclipse.jetty.server.Server.handle(Server.java:516)
              at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388)
              at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633)
              at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380)
              at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
              at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
              at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
              at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:540)
              at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:395)
              at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:161)
              at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
              at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
              at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
              at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:383)
              at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:882)
              at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1036)
              at java.base/java.lang.Thread.run(Thread.java:834)
      Caused by: javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: FILE_NOT_FOUND org.apache.hadoop.ozone.om.exceptions.OMException: Unable to get file status: volume: s3v bucket: fso key: test/
              at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:410)
              at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
              at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:366)
              at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:319)
              at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
              at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1452)
              at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791)
              at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626)
              at org.apache.hadoop.ozone.s3.RootPageDisplayFilter.doFilter(RootPageDisplayFilter.java:53)
              at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
              at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) 

      PFA Debug console logs.

      ls works. mkdir hangs

      Attachments

        1. CDPD-40560-fso_s3a_mkdir_operation_debug.log
          201 kB
          Soumitra Sulav
        2. hadoop_debug_fso_part.txt
          5 kB
          Soumitra Sulav
        3. hadoop_debug_fso.txt
          1.35 MB
          Soumitra Sulav
        4. hadoop_debug_obs.txt
          118 kB
          Soumitra Sulav

        Activity

          People

            Unassigned Unassigned
            ssulav Soumitra Sulav
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: