Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-10135

writes to swift fs over partition size leave temp files and empty output file

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.0-alpha1
    • Fix Version/s: 2.3.0
    • Component/s: fs
    • Labels:
      None

      Description

      The OpenStack/swift filesystem produces incorrect output when the written objects exceed the configured partition size. After job completion, the expected files in the swift container have length == 0 and a collection of temporary files remain with names that appear to be URLs.

      This can be replicated with teragen against the minicluster using the following command line:
      bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.0-SNAPSHOT.jar teragen 100000 swift://mycontainer.myservice/teradata

      Where core-site.xml contains:
      <property>
      <name>fs.swift.impl</name>
      <value>org.apache.hadoop.fs.swift.snative.SwiftNativeFileSystem</value>
      </property>
      <property>
      <name>fs.swift.partsize</name>
      <value>1024</value>
      </property>
      <property>
      <name>fs.swift.service.myservice.auth.url</name>
      <value>https://auth.api.rackspacecloud.com/v2.0/tokens</value>
      </property>
      <property>
      <name>fs.swift.service.myservice.username</name>
      <value>[[your-cloud-username]]</value>
      </property>
      <property>
      <name>fs.swift.service.myservice.region</name>
      <value>DFW</value>
      </property>
      <property>
      <name>fs.swift.service.myservice.apikey</name>
      <value>[[your-api-key]]</value>
      </property>
      <property>
      <name>fs.swift.service.myservice.public</name>
      <value>true</value>
      </property>

      Container "mycontainer" should have a collection of objects with names starting with "teradata/part-m-00000". Instead, that file is empty and there is a collection of objects with names like "swift://mycontainer.myservice/teradata/_temporary/0/_temporary/attempt_local415043862_0001_m_000000_0/part-m-00000/000010"

        Attachments

        1. HADOOP-10135-1.patch
          2 kB
          David Dobbins
        2. HADOOP-10135.patch
          0.8 kB
          David Dobbins

          Activity

            People

            • Assignee:
              highlycaffeinated David Dobbins
              Reporter:
              highlycaffeinated David Dobbins
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: