Bug #63964 Show create from Workbench
Submitted: 9 Jan 2012 7:44 Modified: 29 Jan 2013 3:44
Reporter: Alessio Campani Email Updates:
Status: No Feedback Impact on me:
None 
Category:MySQL Workbench: SQL Editor Severity:S2 (Serious)
Version:5.2.31, 5.2.37 OS:Windows
Assigned to: CPU Architecture:Any

[9 Jan 2012 7:44] Alessio Campani
Description:
We have a large database with many schemas our system is configured as a replica with a master server and 3 slave servers; when we use Workbench, connected to the master server, to send a "show create" command on a table whose engine is "Memory" we have the following problem.
If we do something in the SQL scratch, such as selecting / copying some string, or cancelling the create statement to write another query, when closing the scratch itself we are asked to keep the modifications. If we refuse hitting "Canc" a delete command is sent to the table whose create statement had been requested, on every schema that has a table with that name. The delete command can be retrieved in the binary logs of the master.
We are using 5.2.31 release of Workbench.

How to repeat:
Using workbench, send a show create command to the SQL editor for a memory table. Do something in the scratch then close the scratch itself.
When requested to keep modifications, hit Cancel.
[9 Jan 2012 11:32] Valeriy Kravchuk
Please, check if the same problem still happens with a newer version, 5.2.37.
[9 Jan 2012 15:34] Alessio Campani
I've set up a test environment and installed the latest release of Workbench (5.2.37). The behaviour is the same: enable the binary logs, select a table (memory engine) , right-click, send to SQL Editor the create statement, edit the SQL scratch and close it. A prompt appears asking to keep the modifications, click on Cancel.
If you open the binary log you can find a delete statement on that table on every schema.
[11 Jan 2012 7:21] Valeriy Kravchuk
What exact server version, x.y.z, are you working with? I tried to reproduce on Windows XP while working with local server version 5.1.58, but do not see any DELETE statement for the memory table I've created in the general query log...

Are you sure that these DELETEs do not come from other server in your replication setup?
[11 Jan 2012 10:57] Alessio Campani
The version of MySQL is 5.1.46; we are pretty sure because the delete statements are written in the binary logs of the master itself.
[20 Jan 2012 2:15] Alfredo Kojima
Can you paste an example of the DELETE statement?
[20 Jan 2012 7:40] Alessio Campani
DELETE FROM 'datap2011_1'.'z4_forno_ft'
DELETE FROM 'datap2011_2'.'z4_forno_ft'

Nothing strange...
[20 Jan 2012 16:51] Alfredo Kojima
Is that all? No WHERE ?
I'm looking at the code to see if there's any possibility that such DELETE statements could
be issued from Workbench.
[24 Jan 2012 9:38] Alessio Campani
Today the problem has happened also after a simple select statement.
I've sent a select statement via Workbench to the master server of our replication; the table belongs to an historical database who has been compressed with myIsam.
This has caused a delete statement to be sent to all the slave server on many memory tables (the delete statements are written in the master's binary logs)
[26 Jan 2012 4:55] Alfredo Kojima
Are the queries you pasted *exactly* the queries that are being executed?
For example, there are no WHERE statements, while in Workbench I cannot find any code that
could generate such a query, specially with identifiers quoted with ' quotes instead of `
[26 Jan 2012 7:39] Alessio Campani
For the quote, I just typed the query on the keyboard.
Now, here's the paste directly from the binary log:
DELETE FROM `datap`.`de_real_time`
[29 Dec 2012 3:44] MySQL Verification Team
Please try version 5.2.45. Thanks.
[30 Jan 2013 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".