[ https://issues.apache.org/jira/browse/KYLIN-3058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16266398#comment-16266398 ]
Zhixiong Chen commented on KYLIN-3058: -------------------------------------- Hi,[~peng.jianhua] This patch is fine to me. I will merge it into KYLIN master. Thanks! > We should limit the integer type ID and Port for "Kafka Setting" in > "Streaming Cluster" page > -------------------------------------------------------------------------------------------- > > Key: KYLIN-3058 > URL: https://issues.apache.org/jira/browse/KYLIN-3058 > Project: Kylin > Issue Type: Bug > Components: Web > Reporter: peng.jianhua > Assignee: peng.jianhua > Labels: patch > Attachments: > 0001-KYLIN-3058-We-should-limit-the-integer-type-ID-for-K.patch, > create_non_interger_ID.png, edit_non_interger_ID.png, > streaming_table_dashboard.png > > > When you create or edit one streaming table, then set a non-integer type ID > for "Kafka Setting" in "Streaming Cluster" page( refer to > [^streaming_table_dashboard.png]), at last save it, you will find an error > message page will pop up. > 1. Create a streaming table, then set a non-integer type ID to save, such as > "23a", you will get the error message page, refer to > [^create_non_interger_ID.png]; > 2. Edit a streaming table, then modify a non-integer type ID to save, such as > "23a", you will also get another error message page, refer to > [^edit_non_interger_ID.png]; > In order to find out the cause of the problem, I analyze the Kylin server > log, then I find the error, as follow: > {panel:title=Kylin server log} > 2017-11-24 18:46:07,413 ERROR [http-bio-7070-exec-14] > controller.StreamingController:280 : The data KafkaConfig definition is > invalid. > {color:red}com.fasterxml.jackson.databind.exc.InvalidFormatException: Can not > construct instance of int from String value '23a': not a valid Integer > value{color} > at [Source: > {"uuid":"261e36cd-599e-4306-93b2-add0291de588","last_modified":1511520352482,"version":"2.3.0.20500","name":"DEFAULT.STREAMING_TABLE","clusters":[{"uuid":null,"last_modified":0,"version":"2.3.0.20500","brokers":[{"id":"23a","host":"1","port":1}],"newBroker":{"id":"23a","host":"1","port":1}}],"topic":"kafka > > topic","timeout":60000,"parserName":"org.apache.kylin.source.kafka.TimedJsonStreamParser","timestampField":null,"margin":0,"parserProperties":"tsColName=datetime"}; > {panel} > Then I find the server code, it also show the ID and Port must be integer, as > follow: > {code:java} > public class BrokerConfig implements Serializable{ > @JsonProperty("id") > private int id; > ...... > @JsonProperty("port") > private int port; > {code} > It means the parameter ID and Port are both not allowed for non-integer > types, so we should solve them at the web page. -- This message was sent by Atlassian JIRA (v6.4.14#64029)