flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aljoscha Krettek (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-9245) Can't create a BucketingSink with a provided Configuration if no hadoop defaults
Date Thu, 03 May 2018 15:20:00 GMT

    [ https://issues.apache.org/jira/browse/FLINK-9245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16462583#comment-16462583

Aljoscha Krettek commented on FLINK-9245:

I think the problem is that there really is no authority in the path you specify, and there
is no  default authority. The part between the second and third {{/}} is where the authority
should be, mostly a hostname. For example {{hdfs://my-namenode:50030/user/$USER)}/application_name/}}
or {{hdfs://localhost:50030/user/$USER)}/application_name/}}.

Does that help?

> Can't create a BucketingSink with a provided Configuration if no hadoop defaults
> --------------------------------------------------------------------------------
>                 Key: FLINK-9245
>                 URL: https://issues.apache.org/jira/browse/FLINK-9245
>             Project: Flink
>          Issue Type: Bug
>          Components: Streaming Connectors
>    Affects Versions: 1.4.2
>            Reporter: Julien Cuquemelle
>            Priority: Minor
>             Fix For: 1.6.0
> We build Integration tests using this kind of code: 
> {code:java}
> val bucketingSink = new BucketingSink[Row]("hdfs:///user/$USER)}/application_name/")
> bucketingSink.setFSConfig(hadoopRule.getConfiguration.hdfs)
> bucketingSink.setBucketer(new DateTimeBucketer[Row]("yyyy-MM-dd--HHmm"))
> outpuStream.addSink(bucketingSink)
> {code}
> Here, the hadoopRule is providing a valid hdfs config that should allows this kind of
code to run on a machine with no HADOOP_HOME or HADOOP_CONF_DIR set up, like a developper
workstation or a Jenkins slave.
> When running this code on such a machine, the .createHadoopFileSystem(...) fails with 
> {noformat}
> The given file system URI (hdfs:///user/$USER/application_name/) did not describe the
> at org.apache.flink.runtime.fs.hdfs.HadoopFsFactory.create(HadoopFsFactory.java:149)
> at org.apache.flink.core.fs.FileSystem.getUnguardedFileSystem(FileSystem.java:401){noformat}
> because it tries to instantiate the fileSystem from a default configuration in .getUnguardedFileSystem()
; as the default conf doesn't exist, the default filesystem resolves to "file:///" and the
checks of the consistency of the URI fails because no authority can be found So the whole
filesystem creation fails before actually trying to use the provided config.

This message was sent by Atlassian JIRA

View raw message