This kind of sounds like a Outputstream flushing issue. Try calling "System.out.flush()" now and then in your sink and report back.

On 04/04/2019 18:04, Felipe Gutierrez wrote:
Hello,

I am studying the parallelism of tasks on DataStream. So, I have configured Flink to execute on my machine (master node) and one virtual machine (worker node). The master has 4 cores (taskmanager.numberOfTaskSlots: 4) and the worker only 2 cores (taskmanager.numberOfTaskSlots: 2). I don't need to set this on the 'conf/flink-conf.yaml', this was just to ensure that I am relating the properties with the right concepts.

When I create a application with parallelism of 1, 2, or 4, sometimes I can see the output of the "print()" method, other times no. I checke the output files of the task managers ("flink-flink-taskexecutor-0-master.out" or "flink-flink-taskexecutor-0-worker.out") and I cancel the job and start it again. All of sudden I can see the output on the .out file. I was thinking that it was because I am creating a job with more parallelism that the cluster supports, but this behavior also happens when I set the parallelism of my job to less than the slots available.

I guess if I see on the Flink dashboar X Task slots available and when I deploy my Job, the Job is running and the slots available decreased according to the number of parallelims of my Job, everything should be correct, doesn't it? I also created a Dummy Sink just to print the output, but the behavior is the same.

Here is my code: https://github.com/felipegutierrez/explore-flink/blob/master/src/main/java/org/sense/flink/examples/stream/MqttSensorRandomPartitionByKeyDAG.java#L48

Thanks,
Felipe
*--*
*-- Felipe Gutierrez*
*-- skype: felipe.o.gutierrez
*
*--****_https://felipeogutierrez.blogspot.com_*


Reply via email to