beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Manoj Mathai (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (BEAM-2429) Conflicting filesystems with used of HadoopFileSystem
Date Tue, 11 Jul 2017 15:14:00 GMT

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

Manoj Mathai commented on BEAM-2429:
------------------------------------

Hi  Fran├žois

Thanks a lot for your reply

I tired that. I am able to create the pipeline with the options set. 

But while refering to an hdfs file like below in my program
PCollection<String> lines = dataflowPipeline.apply(TextIO.read().from("hdfs://<<host:port>>/tmp/tmp.txt"));

I am getting an error like org.apache.beam.sdk.Pipeline$PipelineExecutionException: java.lang.IllegalArgumentException:
Error matching the pattern or glob hdfs://<<host:port>>/tmp/tmp.txt: status ERROR

I think I am missing some thing here. 

Do you have any code sample (or any link) which reads a HDFS file. 

Thanks and Regards
Manoj

> Conflicting filesystems with used of HadoopFileSystem
> -----------------------------------------------------
>
>                 Key: BEAM-2429
>                 URL: https://issues.apache.org/jira/browse/BEAM-2429
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-java-extensions
>    Affects Versions: 2.0.0
>            Reporter: Fran├žois Wagner
>            Assignee: Flavio Fiszman
>             Fix For: 2.0.0
>
>
> I'm facing issue when trying to use HadoopFileSystem in my pipeline. It looks like HadoopFileSystem
is registring itself under the `file` schema (https://github.com/apache/beam/pull/2777/files#diff-330bd0854dcab6037ef0e52c05d68eb2L79),
hence the following Exception is thrown when trying to register HadoopFileSystem.
> java.lang.IllegalStateException: Scheme: [file] has conflicting filesystems: [org.apache.beam.sdk.io.LocalFileSystem,
org.apache.beam.sdk.io.hdfs.HadoopFileSystem]
> 	at org.apache.beam.sdk.io.FileSystems.verifySchemesAreUnique(FileSystems.java:498)
> What is the correct way to handle `hdfs` url out of the box with TextIO & AvroIO
?
> {code:java}
>     String[] args = new String[]{
>         "--hdfsConfiguration=[{\"dfs.client.use.datanode.hostname\": \"true\"}]"};
>     HadoopFileSystemOptions options = PipelineOptionsFactory
>         .fromArgs(args)
>         .withValidation()
>         .as(HadoopFileSystemOptions.class);
>     Pipeline pipeline = Pipeline.create(options); 
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message