[ 
https://issues.apache.org/jira/browse/NIFI-14448?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sascha Huk updated NIFI-14448:
------------------------------
    Summary: nifi-cdc: Fix integer serialization to respect SQL UNSIGNED type 
semantics  (was: CaptureChangeMySQL: Fix integer serialization to respect SQL 
UNSIGNED type semantics)

> nifi-cdc: Fix integer serialization to respect SQL UNSIGNED type semantics
> --------------------------------------------------------------------------
>
>                 Key: NIFI-14448
>                 URL: https://issues.apache.org/jira/browse/NIFI-14448
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>    Affects Versions: 2.3.0
>            Reporter: Sascha Huk
>            Priority: Critical
>
> The processor CaptureChangeMySQL changes the value of larger sql-unsigned 
> integer values - for example in the following way: UNSIGNED TINYINT 179 gets 
> thrown on -77. 
> For more context:
>  * see the [current Implementation notes of the Shyiko Binlog 
> Connector|https://github.com/shyiko/mysql-binlog-connector-java/tree/0.21.0?tab=readme-ov-file#implementation-notes]:
>  _data of numeric types (tinyint, etc) always returned signed(!) regardless 
> of whether column definition includes "unsigned" keyword or not._
>  * There are no unsigned integer types in Java
> Therefore, your org.apache.nifi.cdc.event.ColumnDefinition has to memorize 
> isSigned from java.sql.ResultSetMetaData und use this information for the 
> correct interpretation of Shyiko's Java integer types, at least during 
> serialization in your JSON writers.
> I will offer a MergeRequest, while preserving the author's design and coding 
> style as unchanged as possible.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to