You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Aljoscha Krettek (Jira)" <ji...@apache.org> on 2020/01/24 15:52:00 UTC

[jira] [Commented] (FLINK-15739) PojoSerializerUpgradeTest.testSpecifications fails with NPE on Java 12

    [ https://issues.apache.org/jira/browse/FLINK-15739?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17023040#comment-17023040 ] 

Aljoscha Krettek commented on FLINK-15739:
------------------------------------------

Yes, this does originate from the {{ClassRelocator}}, it happens when there is an enum in a class that should be relocated. For example in {{ModifiedPojoSchemaVerifier}}. Printing the list of classes to be remapped in {{ClassRelocator.remap()}} yields this:

Java 1.8:
{code}
org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTestSpecifications$ModifiedPojoSchemaVerifier$PojoAfterSchemaUpgrade
org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTestSpecifications$ModifiedPojoSchemaVerifier$PojoAfterSchemaUpgrade$Color
org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTestSpecifications$ModifiedPojoSchemaVerifier
{code}

Java 12:
{code}
java.lang.Enum$EnumDesc
org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTestSpecifications$ModifiedPojoSchemaVerifier$PojoAfterSchemaUpgrade
org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTestSpecifications$ModifiedPojoSchemaVerifier$PojoAfterSchemaUpgrade$Color
org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTestSpecifications$ModifiedPojoSchemaVerifier
{code}

The NPE is thrown because the class {{java.lang.Enum$EnumDesc}} does not have a {{ClassLoader}}. This is a new class in Java 12: https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/lang/Enum.EnumDesc.html. 

> PojoSerializerUpgradeTest.testSpecifications fails with NPE on Java 12
> ----------------------------------------------------------------------
>
>                 Key: FLINK-15739
>                 URL: https://issues.apache.org/jira/browse/FLINK-15739
>             Project: Flink
>          Issue Type: Bug
>          Components: Tests
>    Affects Versions: 1.11.0
>            Reporter: Chesnay Schepler
>            Priority: Major
>
> Possibly related to the {{ClassRelocator}} annotation.
> https://travis-ci.org/zentol/flink/jobs/640477280
> {code}
> 11:37:47.019 [ERROR] initializationError(org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTest)  Time elapsed: 0.032 s  <<< ERROR!
> java.lang.NullPointerException
> 	at org.apache.flink.api.java.typeutils.runtime.PojoSerializerUpgradeTest.testSpecifications(PojoSerializerUpgradeTest.java:50)
> {code}
> /cc [~aljoscha] [~tzulitai]



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