[jira] [Commented] (FLINK-8824) In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()'
[ https://issues.apache.org/jira/browse/FLINK-8824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390163#comment-16390163 ] ASF GitHub Bot commented on FLINK-8824: --- Github user asfgit closed the pull request at: https://github.com/apache/flink/pull/5620 > In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()' > -- > > Key: FLINK-8824 > URL: https://issues.apache.org/jira/browse/FLINK-8824 > Project: Flink > Issue Type: Bug > Components: Kafka Connector >Reporter: Stephan Ewen >Assignee: mingleizhang >Priority: Major > Fix For: 1.5.0 > > > The connector uses {{getCanonicalName()}} in all places, gather than > {{getClassName()}}. > {{getCanonicalName()}}'s intention is to normalize class names for arrays, > etc, but is problematic when instantiating classes from class names. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (FLINK-8824) In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()'
[ https://issues.apache.org/jira/browse/FLINK-8824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16388034#comment-16388034 ] ASF GitHub Bot commented on FLINK-8824: --- Github user StephanEwen commented on the issue: https://github.com/apache/flink/pull/5620 +1 Looks good, merging this. > In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()' > -- > > Key: FLINK-8824 > URL: https://issues.apache.org/jira/browse/FLINK-8824 > Project: Flink > Issue Type: Bug > Components: Kafka Connector >Reporter: Stephan Ewen >Assignee: mingleizhang >Priority: Major > Fix For: 1.5.0 > > > The connector uses {{getCanonicalName()}} in all places, gather than > {{getClassName()}}. > {{getCanonicalName()}}'s intention is to normalize class names for arrays, > etc, but is problematic when instantiating classes from class names. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (FLINK-8824) In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()'
[ https://issues.apache.org/jira/browse/FLINK-8824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16383765#comment-16383765 ] Stephan Ewen commented on FLINK-8824: - You are right, nested classes are the problematic case. Arrays and primitive types do not make sense in these places anyways. This one case (nested classes) is a good reason to fix this. Plus we set the right example for how to do things for future contributors. > In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()' > -- > > Key: FLINK-8824 > URL: https://issues.apache.org/jira/browse/FLINK-8824 > Project: Flink > Issue Type: Bug > Components: Kafka Connector >Reporter: Stephan Ewen >Assignee: mingleizhang >Priority: Major > Fix For: 1.5.0 > > > The connector uses {{getCanonicalName()}} in all places, gather than > {{getClassName()}}. > {{getCanonicalName()}}'s intention is to normalize class names for arrays, > etc, but is problematic when instantiating classes from class names. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (FLINK-8824) In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()'
[ https://issues.apache.org/jira/browse/FLINK-8824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16383539#comment-16383539 ] ASF GitHub Bot commented on FLINK-8824: --- GitHub user zhangminglei opened a pull request: https://github.com/apache/flink/pull/5620 [FLINK-8824] [kafka] Replace getCanonicalName with getName ## What is the purpose of the change Since using ```getCanonicalName``` to get class name there are potential problems. And it is mainly for normalizing class names for array. ## Brief change log Replace it with ```getName``` You can merge this pull request into a Git repository by running: $ git pull https://github.com/zhangminglei/flink flink-8824 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/5620.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #5620 commit 634262b27b90cc1383c38ff8ac642f7aae522e71 Author: zhangminglei Date: 2018-03-02T12:31:49Z [FLINK-8824] [kafka] Replace getCanonicalName with getName > In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()' > -- > > Key: FLINK-8824 > URL: https://issues.apache.org/jira/browse/FLINK-8824 > Project: Flink > Issue Type: Bug > Components: Kafka Connector >Reporter: Stephan Ewen >Assignee: mingleizhang >Priority: Major > Fix For: 1.5.0 > > > The connector uses {{getCanonicalName()}} in all places, gather than > {{getClassName()}}. > {{getCanonicalName()}}'s intention is to normalize class names for arrays, > etc, but is problematic when instantiating classes from class names. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (FLINK-8824) In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()'
[ https://issues.apache.org/jira/browse/FLINK-8824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16383535#comment-16383535 ] mingleizhang commented on FLINK-8824: - Hi, [~StephanEwen] The only problematic seems I can get like the following. Other than that, I think all good. {code:java} //inner class System.out.println(HashMap.SimpleEntry.class.getName()); System.out.println(HashMap.SimpleEntry.class.getCanonicalName()); {code} Will print as follows {code:java} java.util.AbstractMap$SimpleEntry // correct way java.util.AbstractMap.SimpleEntry // wrong way {code} > In Kafka Consumers, replace 'getCanonicalName()' with 'getClassName()' > -- > > Key: FLINK-8824 > URL: https://issues.apache.org/jira/browse/FLINK-8824 > Project: Flink > Issue Type: Bug > Components: Kafka Connector >Reporter: Stephan Ewen >Assignee: mingleizhang >Priority: Major > Fix For: 1.5.0 > > > The connector uses {{getCanonicalName()}} in all places, gather than > {{getClassName()}}. > {{getCanonicalName()}}'s intention is to normalize class names for arrays, > etc, but is problematic when instantiating classes from class names. -- This message was sent by Atlassian JIRA (v7.6.3#76005)