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

wangfei commented on FLINK-20885:
---------------------------------

I have modified the code locally to fix this bug, and if you do, it is 
recommended that canal-json.database.include and canal-json.table.include 
support regular matching, and contain relationships rather than equal 
relationships. Filter isDdl=true for all binlogs that have an alter or create 
error.

 

我在本地修改了代码 来解决这个bug,如果你们来解决的话,建议canal-json.database.include 和 
canal-json.table.include 应该支持正则匹配,应该是包含关系 而不是等于关系。并且如果有alter 或者create 
等binlog也会报错,建议过滤掉isDdl=true的binlog。

> 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
>            Priority: Major
>         Attachments: image-2021-01-08-14-52-53-443.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