2

私は Flink でこの奇妙な問題を抱えています: 仕事で、事前にコンパイルされたリソース ファイルでオブジェクトを初期化する必要があります。そして、ジョブが開始されてから、初回は問題なく実行されます。しかし、最初とまったく同じように Web インターフェイスで再度アクセスすると、オブジェクトを初期化できず、エラーは次のようになります。

java.nio.file.NoSuchFileException: hdfs:/.../.../my_file

ファイルがそこにあり、オブジェクトが初めて正常に初期化されるため、混乱します。関連するコードは次のとおりです。

Config.load(Files.newBufferedReader(
    Paths.get("hdfs:///xx/xx/myconfig.cfg"),
    StandardCharsets.UTF_8));

リソースがローカル システム上にあり、同じジョブでローカル サーバーを実行している場合、問題は発生しません。それで、誰も手がかりを持っていますか?

編集:完全なトレース

Caused by: java.nio.file.NoSuchFileException: hdfs:/path/to/xx.cfg
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214)
at java.nio.file.Files.newByteChannel(Files.java:361)
at java.nio.file.Files.newByteChannel(Files.java:407)
at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:384)
at java.nio.file.Files.newInputStream(Files.java:152)
at java.nio.file.Files.newBufferedReader(Files.java:2784)
at myObject(myObject.java:364)
at myclass$mymethod.map(myclass.java:126)
at myclass$mymethod.map(myclass.java:1)
at org.apache.flink.streaming.api.operators.StreamMap.processElement(StreamMap.java:35)
at org.apache.flink.streaming.runtime.tasks.OutputHandler$CopyingOperatorCollector.collect(OutputHandler.java:272)
... 7 more
4

0 に答える 0