[ https://issues.apache.org/jira/browse/FLINK-18770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17167864#comment-17167864 ]
Aljoscha Krettek commented on FLINK-18770: ------------------------------------------ Could you please post the code for the Flink Application as well? It would help figuring out why the {{KryoSerializer}} is being used. Also, could you please share exactly how you're running it locally and on the cluster? > Emitting element fails in KryoSerializer > ---------------------------------------- > > Key: FLINK-18770 > URL: https://issues.apache.org/jira/browse/FLINK-18770 > Project: Flink > Issue Type: Bug > Components: API / Type Serialization System > Affects Versions: 1.11.1 > Environment: Flink 1.11.1, Linux > Reporter: Leonid Ilyevsky > Priority: Major > Attachments: KryoException.txt, SolaceSource.java > > > I wrote a simple Flink connector for Solace, see attached java file. It works > fine under local execution environment. However, when I deployed it in the > real Flink cluster, it failed with the Kryo exception, see attached. > After a few hours of search and debugging, I can see now what is going on. > The data I want to emit from this source is a simple byte array. In the > exception stack you can see that when I call 'collect' on the context, it > goes into OperatorChain.java:715, and then to KryoSerializer, where it > ultimately fails. I didn't have a chance to learn what KryoSerializer is and > why it would not know what to do with byte[], but that is not the point now. > Then I used debugger in my local test, in order to figure out how it manages > to work. I saw that after OperatorChain.java:715 it goes into > BytePrimitiveArraySerializer, and then everything is working as expected. > Obviously BytePrimitiveArraySerializer makes sense for byte[] data. > The question is, how can I configure the execution environment under cluster > so that it does serialization the same way as the local one? I looked at > [https://ci.apache.org/projects/flink/flink-docs-stable/dev/execution_configuration.html] > , and I was thinking of setting disableForceKryo, but it says it is disabled > by default anyway. > > Another question is, why cluster execution environment has different default > settings compare to local? This makes it difficult to rely on local tests. -- This message was sent by Atlassian Jira (v8.3.4#803005)