[jira] [Created] (FLINK-19111) Flink Docker image creates checkpoints as root user and hits permission denied afterwards

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-19111) Flink Docker image creates checkpoints as root user and hits permission denied afterwards

Shang Yuanchun (Jira)
Tobias Kaymak created FLINK-19111:
-------------------------------------

             Summary: Flink Docker image creates checkpoints as root user and hits permission denied afterwards
                 Key: FLINK-19111
                 URL: https://issues.apache.org/jira/browse/FLINK-19111
             Project: Flink
          Issue Type: Bug
          Components: flink-docker
    Affects Versions: 1.10.1, 1.10.0
            Reporter: Tobias Kaymak


After upgrading my cluster using the official Docker image for Flink from 1.9 to 1.10.1 I noticed that all checkpoints failed for my existing pipelines. Checkpoints are saved in a local (NFS backed) directory, so full UNIX permissions apply.

I went onto the jobmanager pod and saw that it created the checkpoint folder with root:root as the owner. Even after fixing this or giving it super relaxed permissions (chmod 777) I couldn't make it work.

I checked the changes in the Flink Docker repository on GitHub, but couldn't spot any {{gosu }}or similar related changes. I tried 1.10.2 too, but the issue remained.

The web interface just gives me

*Failure Message:* The job has failed. 

The logs show that there is in fact a permission problem: 



{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager 2020-09-01 10:44:02,226 INFO  org.apache.flink.runtime.checkpoint.CheckpointCoordinator     - Discarding checkpoint 29 of job 5be99250cdea84d1ce400a4d0939bafa.                                                                                                                   }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager java.lang.Exception: Could not materialize checkpoint 29 for operator Source: BigQueryIO.Write/BatchLoads/CreateEmptyFailedInserts/Read(CreateSource) -> BigQueryIO.Write/BatchLoads/View.AsSingleton/Combine.GloballyAsSingletonView/DropInputs/ParMultiDo(NoOp) (1/1).          }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.streaming.runtime.tasks.StreamTask$AsyncCheckpointRunnable.handleExecutionException(StreamTask.java:1221)                                                                                                                                                  }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.streaming.runtime.tasks.StreamTask$AsyncCheckpointRunnable.run(StreamTask.java:1163)                                                                                                                                                                       }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)                                                                                                                                                                                             }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)                                                                                                                                                                                             }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.lang.Thread.run(Thread.java:748)                                                                                                                                                                                                                                       }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager Caused by: java.util.concurrent.ExecutionException: java.io.IOException: Could not flush and close the file system output stream to null in order to obtain the stream state handle                                                                                               }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.util.concurrent.FutureTask.report(FutureTask.java:122)                                                                                                                                                                                                                 }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.util.concurrent.FutureTask.get(FutureTask.java:192)                                                                                                                                                                                                                    flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.concurrent.FutureUtils.runIfNotDoneAndGet(FutureUtils.java:461)                                                                                                                                                                                    }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.streaming.api.operators.OperatorSnapshotFinalizer.<init>(OperatorSnapshotFinalizer.java:53)                                                                                                                                                                }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.streaming.runtime.tasks.StreamTask$AsyncCheckpointRunnable.run(StreamTask.java:1126)                                                                                                                                                                       }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    ... 3 more                                                                                                                                                                                                                                                                     }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager Caused by: java.io.IOException: Could not flush and close the file system output stream to null in order to obtain the stream state handle                                                                                                                                        }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.filesystem.FsCheckpointStreamFactory$FsCheckpointStateOutputStream.closeAndGetHandle(FsCheckpointStreamFactory.java:334)                                                                                                                     }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.DefaultOperatorStateBackendSnapshotStrategy$1.callInternal(DefaultOperatorStateBackendSnapshotStrategy.java:179)                                                                                                                             }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.DefaultOperatorStateBackendSnapshotStrategy$1.callInternal(DefaultOperatorStateBackendSnapshotStrategy.java:108)                                                                                                                             }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.AsyncSnapshotCallable.call(AsyncSnapshotCallable.java:75)                                                                                                                                                                                    }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.util.concurrent.FutureTask.run(FutureTask.java:266)                                                                                                                                                                                                                    }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.concurrent.FutureUtils.runIfNotDoneAndGet(FutureUtils.java:458)                                                                                                                                                                                    }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    ... 5 more                                                                                                                                                                                                                                                                     }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager Caused by: java.io.IOException: Could not open output stream for state backend                                                                                                                                                                                                    }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.filesystem.FsCheckpointStreamFactory$FsCheckpointStateOutputStream.createStream(FsCheckpointStreamFactory.java:367)                                                                                                                          }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.filesystem.FsCheckpointStreamFactory$FsCheckpointStateOutputStream.flush(FsCheckpointStreamFactory.java:234)}}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.filesystem.FsCheckpointStreamFactory$FsCheckpointStateOutputStream.closeAndGetHandle(FsCheckpointStreamFactory.java:309)                                                                                                                     }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    ... 10 more                                                                                                                                                                                                                                                                    }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager Caused by: java.io.FileNotFoundException: /mnt/checkpoints/5be99250cdea84d1ce400a4d0939bafa/chk-29/218d235b-bcd0-497b-8925-12d6d4bbc4f5 (Permission denied)}}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.io.FileOutputStream.open0(Native Method)                                                                                                                                                                                                                               }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.io.FileOutputStream.open(FileOutputStream.java:270)                                       }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.io.FileOutputStream.<init>(FileOutputStream.java:213)                                                                                                                                                                                                                  }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at java.io.FileOutputStream.<init>(FileOutputStream.java:162)                                                                                                                                                                                                                  }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.core.fs.local.LocalDataOutputStream.<init>(LocalDataOutputStream.java:47)}}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.core.fs.local.LocalFileSystem.create(LocalFileSystem.java:273)                                                                                                                                                                                             }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.core.fs.SafetyNetWrapperFileSystem.create(SafetyNetWrapperFileSystem.java:126)}}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.core.fs.EntropyInjector.createEntropyAware(EntropyInjector.java:61)                                                                                                                                                                                        }}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    at org.apache.flink.runtime.state.filesystem.FsCheckpointStreamFactory$FsCheckpointStateOutputStream.createStream(FsCheckpointStreamFactory.java:356)}}

{{flink-jobmanager-5ff5bf9b5d-4fkcw jobmanager    ... 12 more}}

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)