Search code examples
scalaapache-flinkkryo

Why does Apache Flink stall in method org.apache.flink.api.java.typeutils.runtime.kryo.Serializers.getContainedGenericTypes?


While implementing my algorithm I have created a long chain of operators in Apache Flink with for loop. Starting from some length processing stalls in method org.apache.flink.api.java.typeutils.runtime.kryo.Serializers.getContainedGenericTypes for a long time before actual processing. How can be explained this phenomenon? How can it be addressed in order to reduce this method time?

enter image description here


Solution

  • The Serializers.getContainedGenericTypes() method is only called during the plan creation of your DataSet application.

    Setting ExecutionConfig.disableAutoTypeRegistration() will disable this registration.

    I assume you are running your Flink application locally without a lot of data. Usually, the plan creation takes only a small fraction of the available CPU time, and the actual processing eats up most of it.