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

wangfei edited comment on FLINK-20885 at 1/13/21, 3:16 AM:
-----------------------------------------------------------

table test_2.userName (int); table test_1.userName (varchar);
 You create a ddl with canal-json.table.include=test_2 .

Then add the binlog of test_1, as in the binlog format above

{"data":[\{"id":"0","username":"zhangsna","password":"11111111","AddTime":"0000-00-00
 
00:00:00"}],"database":"plink","es":1610507775000,"id":90557,"isDdl":false,"mysqlType":\{"id":"int(11)","username":"varchar(255)","password":"varchar(255)","AddTime":"datetime"},"old":[\{"password":"1111111"}],"pkNames":["id"],"sql":"","sqlType":\{"id":4,"username":12,"password":12,"AddTime":93},"table":"test_1","ts":1610507775184,"type":"UPDATE"}

Then you get an error

 


was (Author: wangfeiair2324):
table test_2.userName (int); table test_1.userName (varchar);
 You create a ddl with canal-json.table.include=test_2 .

Then add the binlog of test_1, as in the binlog format above

{"data":[\{"id":"0","username":"zhangsna","password":"1111111","AddTime":"0000-00-00
 
00:00:00"}],"database":"plink","es":1610507126000,"id":90469,"isDdl":false,"mysqlType":\{"id":"int(11)","username":"varchar(255)","password":"varchar(255)","AddTime":"datetime"},"old":[\{"username":null,"password":null}],"pkNames":["id"],"sql":"","sqlType":\{"id":4,"username":12,"password":12,"AddTime":93},"table":"test_1","ts":1610507127009,"type":"UPDATE"}


 Then you get an error

 

> Exception when use 'canal-json.table.include' to filter Canal binlog but 
> table contains 'source' column
> -------------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-20885
>                 URL: https://issues.apache.org/jira/browse/FLINK-20885
>             Project: Flink
>          Issue Type: Bug
>          Components: Formats (JSON, Avro, Parquet, ORC, SequenceFile), Table 
> SQL / Ecosystem
>            Reporter: Jark Wu
>            Assignee: Nicholas Jiang
>            Priority: Major
>         Attachments: image-2021-01-08-14-52-53-443.png, 
> image-2021-01-08-14-53-40-476.png, screenshot-1.png
>
>
> I found a bug in the canal code. 'canal-json.table.include' does not filter 
> out the binlog of the specified table correctly, which will cause an error in 
> the parsing section. For example, if I want to read the binlog of 
> canal-json.table.include = 'a' table, there is a source field of int in table 
> a, but at this time if table b also has a source field of string, An error 
> will be reported.
>  !screenshot-1.png! 



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

Reply via email to