David Dobbins created HADOOP-10135: -------------------------------------- Summary: writes to swift fs over partition size leave temp files and empty output file Key: HADOOP-10135 URL: https://issues.apache.org/jira/browse/HADOOP-10135 Project: Hadoop Common Issue Type: Bug Components: fs Affects Versions: 3.0.0 Reporter: David Dobbins
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.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" -- This message was sent by Atlassian JIRA (v6.1#6144)