You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Konstantine Karantasis (Jira)" <ji...@apache.org> on 2020/10/06 01:21:00 UTC

[jira] [Resolved] (KAFKA-10439) Connect's Values class loses precision for integers, larger than 64 bits

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

Konstantine Karantasis resolved KAFKA-10439.
--------------------------------------------
    Resolution: Fixed

Merged and back ported to the branches listed under "Fix version"

> Connect's Values class loses precision for integers, larger than 64 bits
> ------------------------------------------------------------------------
>
>                 Key: KAFKA-10439
>                 URL: https://issues.apache.org/jira/browse/KAFKA-10439
>             Project: Kafka
>          Issue Type: Bug
>          Components: KafkaConnect
>            Reporter: Oleksandr Diachenko
>            Assignee: Oleksandr Diachenko
>            Priority: Major
>             Fix For: 2.0.2, 2.1.2, 2.2.3, 2.3.2, 2.4.2, 2.7.0, 2.5.2, 2.6.1
>
>
> The `org.apache.kafka.connect.data.Values#parse` method parses integers, which are larger than `Long.MAX_VALUE` as `double` with `
> Schema.FLOAT64_SCHEMA`.
>  
> That means it loses precision for these larger integers.
> For example:
> {code:java}
> SchemaAndValue schemaAndValue = Values.parseString("9223372036854775808");
> {code}
> returns:
> {code:java}
> SchemaAndValue{schema=Schema{FLOAT64}, value=9.223372036854776E18}
> {code}



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