Bug #45229 Forward Engineer Export or Live causes "quit unexpectedly"
Submitted: 1 Jun 2009 0:57 Modified: 9 Jun 2009 10:34
Reporter: Greg Wright Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Workbench Severity:S2 (Serious)
Version:5.1.12 Beta Rev 4000 OS:MacOS (Mac Pro Quad-core Intel Xeon 2.8 Ghz 2 procs 8 cores 8GB RAM 1.6 Ghz Boot ROM (MP31.006C.B05) 1.5 TB)
Assigned to: Alfredo Kojima CPU Architecture:Any

[1 Jun 2009 0:57] Greg Wright
Description:
Forward Engineer SQL Create Script Wizard fails with "quit unexpectedly" message after asking questions. Any answers to the questions produces the same error dialog. Excluding all tables except for one, even causes the same error dialog. Any combinations does not work. This is the same with using the Database | Forward Engineer wizard.

Upon examining the SQL script file, the export did get created, and was populated with all objects and SQL syntax text.

How to repeat:
1. Open .mwb
2. Select File | Export | FOrward Engineeer SQL Script
3. Enter a valid output filename
4. Select any options (omitting the schema qualifier doesn't remove the schema in the script)
5. Click continue
6. Click on the Export MySQL Table Objects
7. Click continue

After waiting for 3 seconds, the error dialog appears. "The application MySQLWorkbench quit unexpectedly after it was relaunched." with IGNORE, REPORT and RELAUNCH.

Suggested fix:
Since the SQL file is still created there is no additional adjustment required for the fix. Just make sure the model is saved before executing these wizards.
[1 Jun 2009 1:17] Greg Wright
I created a new model with only one table and two fields. The Export worked correctly. Will find out what is in my model that doesn't work. My current model has about 15 entities with foreign keys and relationships.
[1 Jun 2009 2:45] Greg Wright
After taking out a large number of entities, with only four left, one entity has an orphaned relationship to a table. A table Relationship entry exists, but no graphical line between the parent and child exists, nor is the field "ticked" as connected. When I tried to tick the field in the table Relationship tab for the one entity, no line would appear in the UI. But having connected it, the wizard would work. 

It appears there is a disconnect between a parent and a child relationship and when the wizard comes across an "orphaned" relationship, caused by I don't know what, then the app crashes. If the UI is tighter about not allowing an orphaned relationship, it probably won't fail on that point.

Possible, if there is a check to identity that this scenario exists, it would also help the user to know that it's happened.
[1 Jun 2009 2:59] Greg Wright
Ultimately the Export to SQL File and Database | Forward Engineer options work after fixing an orphaned foreign key relationship entry by removing the Foreign Key reference entirely and recreating it. I'm not quite sure how the relationship was not connected. I couldn't find it easily because I also realized that the UI did not have a Crows foot line between the Parent and the Child. Through trail and error I found the entity, the Foreign Key entry and repaired it. Both of these methods fail if that kind of orphaned scenario exists.
[4 Jun 2009 17:13] Valeriy Kravchuk
Thank you for the bug report. Verified just as described. WB crashes while exporting CREATE script for "Test Orphaned FK Idx Will Fail.mwb".
[8 Jun 2009 17:05] Johannes Taxacher
the problem is fixed. WB now detects such problems in a document-file on load and reports/corrects it.
[9 Jun 2009 10:34] Tony Bedford
An entry was added to the 5.1.13 changelog:

On Mac OS X, using the Forward Engineer to Database, or Forward Engineer SQL Script wizards caused MySQL Workbench to generate the error message:

The application MySQLWorkbench quit unexpectedly after it was relaunched.