snowflakedb / snowflake-jdbc

Snowflake JDBC Driver
Apache License 2.0
173 stars 161 forks source link

SNOW-163404: Snowflake JDBC driver truncates doubles with high precision #248

Closed charlesjmorgan closed 1 year ago

charlesjmorgan commented 4 years ago

When using the Snowflake JDBC driver, doubles with high precision (generally over 15) get truncated.

link to gist with example

The included example reproduces this behavior. The value inserted into the table is more precise than the value returned from the table. It is my understanding that snowflake uses the same format to store doubles (or floats) as java does. So why does it truncate doubles with high precision?

findepi commented 3 years ago

Any updates?

hashhar commented 3 years ago

Seems like this was fixed in 3.11.1. I can no longer reproduce the issue on newer versions.

From https://github.com/snowflakedb/snowflake-jdbc/blob/master/CHANGELOG.rst

JDBC Driver 3.11.1

    | SNOW-126957 | Add CLIENT_ENABLE_LOG_INFO_STATEMENT_PARAMETERS for logging statements and binding data in INO log level.
    | SNOW-122023 | Fix the order of escapeChars for getTables and getColumns.
    | SNOW-123702 | Update BouncyCastle to 1.60 to fix two high severity issues
    | SNOW-124928 | Fix precision loss while using getFloat/getDouble for Decimal values having large scale
    | SNOW-121276 | Add ability to serialize SnowflakeDataSource objects
sfc-gh-igarish commented 1 year ago

To clean up and re-prioritize more pressing bugs and feature requests we are closing all issues older than 6 months as of March 1, 2023. If there are any issues or feature requests that you would like us to address, please create them according to the new templates we have created. For urgent issues, opening a support case with this link Snowflake Community is the fastest way to get a response.