Bug #40169 Database Synchronize fails to synchronize float and double
Submitted: 20 Oct 2008 10:39 Modified: 22 Jun 2009 13:53
Reporter: Frederic Peters Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Workbench Severity:S2 (Serious)
Version:5.0.26 OS:Windows
Assigned to: Alexander Musienko CPU Architecture:Any
Tags: database, double(256), float(256), synchronize

[20 Oct 2008 10:39] Frederic Peters
Description:
When trying to sync a model to a database, tables defining some columns as float or double prevent the synchronization sql script to work properly

the sql generated uses the syntax FLOAT(256) or DOUBLE(256) which is rejected by mysql server (5.0.51a)
changing the script to use just FLOAT or DOUBLE works but after then, synchronization always think the target table is not yet synchronized and suggest all the time to make an alter table and change again to FLOAT(256)

How to repeat:
Create a model with a table containing a FLOAT field,
try to synchronize to a live database and check in the generated sql script

Suggested fix:
Use FLOAT instead of FLOAT(256)
DOUBLE instead of DOUBLE(256)
or allow to customize this in the column editor
[20 Oct 2008 13:03] MySQL Verification Team
Thank you for the bug report.
[18 Jun 2009 13:08] Johannes Taxacher
this is fixed in 5.1.13
[22 Jun 2009 13:53] Tony Bedford
An entry was added to the 5.1.13 changelog:

When trying to synchronize a model to a database, tables defining some columns as FLOAT or DOUBLE prevented the synchronization SQL script from working.

The SQL generated used the syntax FLOAT(256) or DOUBLE(256) which was rejected by MySQL Server 5.0.51a.

Editing the generated script manually to use just FLOAT or DOUBLE worked. However, MySQL Workbench then assumed the target table was not correctly synchronized, and prompted the user accordingly.