BUG #12878: Update fails with ODBC driver 9.0.3.400 - Mailing list pgsql-bugs

From rstefan@perceptron.com
Subject BUG #12878: Update fails with ODBC driver 9.0.3.400
Date
Msg-id 20150318191321.2730.21636@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #12878: Update fails with ODBC driver 9.0.3.400  (jaime soler <jaime.soler@gmail.com>)
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      12878
Logged by:          Ralph Stefan
Email address:      rstefan@perceptron.com
PostgreSQL version: 9.2.10
Operating system:   Windows 7
Description:

I have a problem with the 9.0.3.400 ODBC driver. Using a C++ client using
CRecordSet, the update method fails. The ODBC driver is now expanding a
double to 17 or 18 digits of precision. In version 9.0.3.300 and lower, it
only expanded it to 16 digits of precision. Here is the SQL log for an
update in version 9.0.3.300:

UPDATE SP_MEMS_LIGHTSOURCE_OPTIONS SET

start_x='-0.0819098162202559',start_y='-0.288030017956869',end_x='0.0959545102741697',end_y='0.270450291244762',number_of_lines=10,cycle_time=480,exposure=5946,min_clipz='-20',max_clipz='20',min_exposure=500,max_exposure=10000
 WHERE "options_id" = 10009 AND "lightsource_order" = 0 AND "surface_id" =
10007 AND "lightsource_type" = 1 AND "pattern_type" = 0 AND "start_x" =
'-0.28' AND "start_y" = '-0.32' AND "end_x" = '0.32' AND "end_y" = '0.26'
AND "number_of_lines" = 20 AND "cycle_time" = 800 AND "samples_per_second" =
50000 AND "horizontal_speed" = 0 AND "vertical_speed" = 0 AND "scan_rate" =
25 AND "exposure" = 6196 AND "gain" = 3 AND "mode" = 1 AND "continuous" = 0
AND "disable_interpolation" = 0 AND "disable_filter" = 0 AND "min_clipz" =
'-50' AND "max_clipz" = '50' AND "rotation" = '0' AND "algorithm" = 2 AND
"min_exposure" = 0 AND "max_exposure" = 0 AND "laser_modulation" = 0 AND
"allow_updates" = 1

Here is the same update in 9.0.3.400

UPDATE SP_MEMS_LIGHTSOURCE_OPTIONS SET

start_x='-0.081909816220255879',start_y='-0.288030017956869',end_x='0.09595451027416968',end_y='0.27045029124476166',number_of_lines=10,cycle_time=480,exposure=5946,min_clipz='-20',max_clipz='20',min_exposure=500,max_exposure=10000
 WHERE "options_id" = 10019 AND "lightsource_order" = 0 AND "surface_id" =
10017 AND "lightsource_type" = 1 AND "pattern_type" = 0 AND "start_x" =
'-0.28000000000000003' AND "start_y" = '-0.32000000000000001' AND "end_x" =
'0.32000000000000001' AND "end_y" = '0.26000000000000001' AND
"number_of_lines" = 20 AND "cycle_time" = 800 AND "samples_per_second" =
50000 AND "horizontal_speed" = 0 AND "vertical_speed" = 0 AND "scan_rate" =
25 AND "exposure" = 6196 AND "gain" = 3 AND "mode" = 1 AND "continuous" = 0
AND "disable_interpolation" = 0 AND "disable_filter" = 0 AND "min_clipz" =
'-50' AND "max_clipz" = '50' AND "rotation" = '0' AND "algorithm" = 2 AND
"min_exposure" = 0 AND "max_exposure" = 0 AND "laser_modulation" = 0 AND
"allow_updates" = 1

With the additional garbage digit of precision, the update now fails.

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #12877: Altitude not respected in order by and group by
Next
From: Asif Naeem
Date:
Subject: Re: pg_upgrade failure on Windows Server