Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
1.6.0
-
None
-
None
-
Patch
Description
Processor: CaptureChangeMysql
When mysql column type is of unsigned primitive type, CaptureChangeMysql is not able to read the data properly when the value overflows. I investigated a bit and came across this (https://github.com/shyiko/mysql-binlog-connector-java/issues/104). The library which is internally being used in CaptureChangeMysql Processor (https://github.com/shyiko/mysql-binlog-connector-java) does not handle this case and its upto consumer to handle it. More description can be found in the link.
Issue summary Eg.
Column type : unsigned tinyint
Actual value : 128
Value from CaptureChangeMysql: -128 (Because its still 8bits storage and mostsignificant bit is identified as sign from java.)
Possible solution:
Column types are read and stored Distributed Map Cache Client so we should be able to do these conversions.
Nifi version : 1.6.0
Mysql version : 5.7.22-log
Binlog type. : Row-based logging