On Tue, Sep 17, 2019 at 1:43 PM Thomas Weise <t...@apache.org> wrote:
>
> +1 for making --experiments=beam_fn_api default.
>
> Can the Dataflow runner driver just remove the setting if it is not 
> compatible?

The tricky bit would be undoing the differences in graph construction
due to this flag flip. But I would be in favor of changing the default
(probably just removing the flag) and moving the non-portability parts
into the dataflow runner itself. (It looks like the key differences
here are for the Create and Read transforms.)

> On Tue, Sep 17, 2019 at 11:33 AM Maximilian Michels <m...@apache.org> wrote:
>>
>> +dev
>>
>> The beam_fn_api flag and the way it is automatically set is error-prone.
>> Is there anything that prevents us from removing it? I understand that
>> some Runners, e.g. Dataflow Runner have two modes of executing Python
>> pipelines (legacy and portable), but at this point it seems clear that
>> the portability mode should be the default.
>>
>> Cheers,
>> Max
>>
>> On September 14, 2019 7:50:52 PM PDT, Yu Watanabe
>> <yu.w.ten...@gmail.com> wrote:
>>
>>     Kyle
>>
>>     Thank you for the assistance.
>>
>>     By specifying "experiments" in PipelineOptions ,
>>     ==========================================
>>              options = PipelineOptions([
>>                            "--runner=FlinkRunner",
>>                            "--flink_version=1.8",
>>                            "--flink_master_url=localhost:8081",
>>                            "--experiments=beam_fn_api"
>>                        ])
>>     ==========================================
>>
>>     I was able to submit the job successfully.
>>
>>     [grpc-default-executor-0] INFO
>>     org.apache.beam.runners.flink.FlinkJobInvoker - Invoking job
>>     BeamApp-ywatanabe-0915024400-8e0dc08_bc24de73-c729-41ad-ae27-35281b45feb9
>>     [grpc-default-executor-0] INFO
>>     org.apache.beam.runners.fnexecution.jobsubmission.JobInvocation -
>>     Starting job invocation
>>     BeamApp-ywatanabe-0915024400-8e0dc08_bc24de73-c729-41ad-ae27-35281b45feb9
>>     [flink-runner-job-invoker] INFO
>>     org.apache.beam.runners.flink.FlinkPipelineRunner - Translating
>>     pipeline to Flink program.
>>     [flink-runner-job-invoker] INFO
>>     org.apache.beam.runners.flink.FlinkExecutionEnvironments - Creating
>>     a Batch Execution Environment.
>>     [flink-runner-job-invoker] INFO
>>     org.apache.beam.runners.flink.FlinkExecutionEnvironments - Using
>>     Flink Master URL localhost:8081.
>>     [flink-runner-job-invoker] WARN
>>     org.apache.beam.runners.flink.FlinkExecutionEnvironments - No
>>     default parallelism could be found. Defaulting to parallelism 1.
>>     Please set an explicit parallelism with --parallelism
>>     [flink-runner-job-invoker] INFO
>>     org.apache.flink.api.java.ExecutionEnvironment - The job has 0
>>     registered types and 0 default Kryo serializers
>>     [flink-runner-job-invoker] INFO
>>     org.apache.flink.configuration.Configuration - Config uses fallback
>>     configuration key 'jobmanager.rpc.address' instead of key 'rest.address'
>>     [flink-runner-job-invoker] INFO
>>     org.apache.flink.runtime.rest.RestClient - Rest client endpoint started.
>>     [flink-runner-job-invoker] INFO
>>     org.apache.flink.client.program.rest.RestClusterClient - Submitting
>>     job 4e055a8878dda3f564a7b7c84d48510d (detached: false).
>>
>>     Thanks,
>>     Yu Watanabe
>>
>>     On Sun, Sep 15, 2019 at 3:01 AM Kyle Weaver <kcwea...@google.com
>>     <mailto:kcwea...@google.com>> wrote:
>>
>>         Try adding "--experiments=beam_fn_api" to your pipeline options.
>>         (This is a known issue with Beam 2.15 that will be fixed in 2.16.)
>>
>>         Kyle Weaver | Software Engineer | github.com/ibzib
>>         <http://github.com/ibzib> | kcwea...@google.com
>>         <mailto:kcwea...@google.com>
>>
>>
>>         On Sat, Sep 14, 2019 at 12:52 AM Yu Watanabe
>>         <yu.w.ten...@gmail.com <mailto:yu.w.ten...@gmail.com>> wrote:
>>
>>             Hello.
>>
>>             I am trying to spin up the flink runner but looks like data
>>             serialization is failing.
>>             I would like to ask for help to get over with this error.
>>
>>             
>> ========================================================================
>>             [flink-runner-job-invoker] ERROR
>>             org.apache.beam.runners.fnexecution.jobsubmission.JobInvocation
>>             - Error during job invocation
>>             
>> BeamApp-ywatanabe-0914074210-2fcf987a_3dc1d4dc-4754-470a-9a23-eb8a68903016.
>>             java.lang.IllegalArgumentException: unable to deserialize
>>             BoundedSource
>>                      at
>>             
>> org.apache.beam.sdk.util.SerializableUtils.deserializeFromByteArray(SerializableUtils.java:74)
>>                      at
>>             
>> org.apache.beam.runners.core.construction.ReadTranslation.boundedSourceFromProto(ReadTranslation.java:94)
>>                      at
>>             
>> org.apache.beam.runners.flink.FlinkBatchPortablePipelineTranslator.translateRead(FlinkBatchPortablePipelineTranslator.java:573)
>>                      at
>>             
>> org.apache.beam.runners.flink.FlinkBatchPortablePipelineTranslator.translate(FlinkBatchPortablePipelineTranslator.java:278)
>>                      at
>>             
>> org.apache.beam.runners.flink.FlinkBatchPortablePipelineTranslator.translate(FlinkBatchPortablePipelineTranslator.java:120)
>>                      at
>>             
>> org.apache.beam.runners.flink.FlinkPipelineRunner.runPipelineWithTranslator(FlinkPipelineRunner.java:84)
>>                      at
>>             
>> org.apache.beam.runners.flink.FlinkPipelineRunner.run(FlinkPipelineRunner.java:63)
>>                      at
>>             
>> org.apache.beam.runners.fnexecution.jobsubmission.JobInvocation.runPipeline(JobInvocation.java:74)
>>                      at
>>             
>> org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
>>                      at
>>             
>> org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:57)
>>                      at
>>             
>> org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
>>                      at
>>             
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)(python)
>>             ywatanabe@debian-09-00:~$
>>                      at
>>             
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>>                      at java.lang.Thread.run(Thread.java:748)
>>             Caused by: java.io.IOException: FAILED_TO_UNCOMPRESS(5)
>>                      at
>>             org.xerial.snappy.SnappyNative.throw_error(SnappyNative.java:98)
>>                      at
>>             org.xerial.snappy.SnappyNative.rawUncompress(Native Method)
>>                      at
>>             org.xerial.snappy.Snappy.rawUncompress(Snappy.java:474)
>>                      at org.xerial.snappy.Snappy.uncompress(Snappy.java:513)
>>                      at
>>             
>> org.xerial.snappy.SnappyInputStream.readFully(SnappyInputStream.java:147)
>>                      at
>>             
>> org.xerial.snappy.SnappyInputStream.readHeader(SnappyInputStream.java:99)
>>                      at
>>             
>> org.xerial.snappy.SnappyInputStream.<init>(SnappyInputStream.java:59)
>>                      at
>>             
>> org.apache.beam.sdk.util.SerializableUtils.deserializeFromByteArray(SerializableUtils.java:68)
>>                      ... 13 more
>>             
>> ========================================================================
>>
>>             My beam version is below.
>>
>>             
>> =======================================================================
>>             (python) ywatanabe@debian-09-00:~$ pip3 freeze | grep
>>             apache-beam
>>             apache-beam==2.15.0
>>             
>> =======================================================================
>>
>>             I have my harness container ready on  the registry.
>>
>>             
>> =======================================================================
>>             ywatanabe@debian-09-00:~$ docker search
>>             ywatanabe-docker-apache.bintray.io/python3
>>             <http://ywatanabe-docker-apache.bintray.io/python3>
>>             NAME                DESCRIPTION         STARS
>>             OFFICIAL            AUTOMATED
>>             beam/python3                            0
>>             
>> =======================================================================
>>
>>             Flink is ready on separate cluster.
>>
>>             
>> =======================================================================
>>             (python) ywatanabe@debian-09-00:~$ ss -atunp | grep 8081
>>             tcp    LISTEN     0      128      :::8081         :::*
>>             
>> =======================================================================
>>
>>
>>             My debian version.
>>
>>             
>> =======================================================================
>>
>>             (python) ywatanabe@debian-09-00:~$ cat /etc/debian_version
>>             9.11
>>             
>> =======================================================================
>>
>>
>>             My code snippet is below.
>>
>>             
>> =======================================================================
>>
>>                  options = PipelineOptions([
>>                                "--runner=FlinkRunner",
>>                                "--flink_version=1.8",
>>             "--flink_master_url=localhost:8081"
>>                            ])
>>
>>                  with beam.Pipeline(options=options) as p:
>>
>>                      (p | beam.Create(["Hello World"]))
>>             
>> =======================================================================
>>
>>
>>             Would there be any other settings should I look for ?
>>
>>             Thanks,
>>             Yu Watanabe
>>
>>             --
>>             Yu Watanabe
>>             Weekend Freelancer who loves to challenge building data
>>             platform
>>             yu.w.ten...@gmail.com <mailto:yu.w.ten...@gmail.com>
>>             LinkedIn icon <https://www.linkedin.com/in/yuwatanabe1>
>>             Twitter icon <https://twitter.com/yuwtennis>
>>
>>
>>
>>     --
>>     Yu Watanabe
>>     Weekend Freelancer who loves to challenge building data platform
>>     yu.w.ten...@gmail.com <mailto:yu.w.ten...@gmail.com>
>>     LinkedIn icon <https://www.linkedin.com/in/yuwatanabe1> Twitter icon
>>     <https://twitter.com/yuwtennis>
>>

Reply via email to