Bug #64267 MySQL Workbench Crash
Submitted: 8 Feb 2012 17:53 Modified: 27 Jul 2012 8:11
Reporter: Gene Kirschner Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Workbench: Administration Severity:S2 (Serious)
Version:5.2.37, 5.2.38, 5.2.39 OS:Windows (XP SP3, 2003 Server SP2)
Assigned to: Juan Rene Ramirez Monarrez CPU Architecture:Any
Tags: crash, Data Export, encountered a problem, legal form, path

[8 Feb 2012 17:53] Gene Kirschner
Description:
When performing a database export/import the Workbench may throw an error and crash. This has occurred with at least two versions. In previous version of Workbench the crash appears to be intermittent as I could still perform operations before the crash. In the present version of Workbench I am seeing crashes prior to my ability to perform any functions.

How to repeat:
Connect to a DB using Server Administration
Select Data Export
Choose a DB
Choose Export to Self-Contained File (if not already selected)
Click on ... to choose a file location and name
Save As box is displayed and immediately get an error:
  "MySQL Workbench Unexpected Error"
    MySQL Workbench has encountered a problem
    The path is not of a legal form

Stack trace:

Exception = System.ArgumentException
Message = The path is not of a legal form.
FullText = System.ArgumentException: The path is not of a legal form.
   at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength)
   at System.IO.Path.GetFullPathInternal(String path)
   at System.IO.Path.GetFullPath(String path)
   at System.Drawing.IntSecurity.UnsafeGetFullPath(String fileName)
   at System.Drawing.IntSecurity.DemandReadFileIO(String fileName)
   at System.Drawing.Bitmap..ctor(String filename)
   at MySQL.Forms.TreeViewImpl.TreeValueNeeded(Object sender, NodeControlValueEventArgs e)
   at Aga.Controls.Tree.NodeControls.BindableControl.OnValueNeeded(NodeControlValueEventArgs args)
   at Aga.Controls.Tree.NodeControls.BindableControl.GetValue(TreeNodeAdv node)
   at Aga.Controls.Tree.NodeControls.NodeIcon.GetIcon(TreeNodeAdv node)
   at Aga.Controls.Tree.NodeControls.NodeIcon.MeasureSize(TreeNodeAdv node, DrawContext context)
   at Aga.Controls.Tree.NodeControls.NodeControl.GetActualSize(TreeNodeAdv node, DrawContext context)
   at Aga.Controls.Tree.TreeViewAdv.<GetNodeControls>d__7.MoveNext()
   at Aga.Controls.Tree.TreeViewAdv.<GetNodeControls>d__0.MoveNext()
   at Aga.Controls.Tree.TreeViewAdv.DrawNode(TreeNodeAdv node, DrawContext context)
   at Aga.Controls.Tree.TreeViewAdv.DrawRow(PaintEventArgs e, DrawContext& context, Int32 row, Rectangle rowRect)
   at Aga.Controls.Tree.TreeViewAdv.OnPaint(PaintEventArgs e)
   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer)
   at System.Windows.Forms.Control.WmPaint(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
[8 Feb 2012 18:01] Gene Kirschner
I noticed that I am using UNC paths on all import/export locations. I am attempting to change them to all point to a local disk/directory to see if it helps:

On my system I am defaulted to a UNC ( \\server\path\file ) which may be driven by my OS configuration and not MySQL Workbench. If I type in the path manually and don't touch the "..." I can perform operations with no crash. Between Workbench executions the path is saved but if I click on the "..." all paths are reset to the UNC values and the crash occurs.

I'll keep testing and updating on my findings
[8 Feb 2012 19:29] Valeriy Kravchuk
Verified on Windows XP. I've just typed \\localhost\ before the usual c:\... filename generated by Workbench and clicked on "..." button. Got the same stack trace:

Exception = System.ArgumentException
Message = The path is not of a legal form.
FullText = System.ArgumentException: The path is not of a legal form.
   at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength)
   at System.IO.Path.GetFullPathInternal(String path)
   at System.IO.Path.GetFullPath(String path)
   at System.Drawing.IntSecurity.UnsafeGetFullPath(String fileName)
   at System.Drawing.IntSecurity.DemandReadFileIO(String fileName)
   at System.Drawing.Bitmap..ctor(String filename)
   at MySQL.Forms.TreeViewImpl.TreeValueNeeded(Object sender, NodeControlValueEventArgs e)
   at Aga.Controls.Tree.NodeControls.BindableControl.OnValueNeeded(NodeControlValueEventArgs args)
   at Aga.Controls.Tree.NodeControls.BindableControl.GetValue(TreeNodeAdv node)
   at Aga.Controls.Tree.NodeControls.NodeIcon.GetIcon(TreeNodeAdv node)
   at Aga.Controls.Tree.NodeControls.NodeIcon.MeasureSize(TreeNodeAdv node, DrawContext context)
   at Aga.Controls.Tree.NodeControls.NodeControl.GetActualSize(TreeNodeAdv node, DrawContext context)
   at Aga.Controls.Tree.TreeViewAdv.<GetNodeControls>d__7.MoveNext()
   at Aga.Controls.Tree.TreeViewAdv.<GetNodeControls>d__0.MoveNext()
   at Aga.Controls.Tree.TreeViewAdv.DrawNode(TreeNodeAdv node, DrawContext context)
   at Aga.Controls.Tree.TreeViewAdv.DrawRow(PaintEventArgs e, DrawContext& context, Int32 row, Rectangle rowRect)
   at Aga.Controls.Tree.TreeViewAdv.OnPaint(PaintEventArgs e)
   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer)
   at System.Windows.Forms.Control.WmPaint(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

This is a bug. Workbench should not crash no matter what kind of URI (even incorrect) is given.
[29 Mar 2012 15:10] Valeriy Kravchuk
Bug #64801 was marked as a duplicate of this one.
[1 Apr 2012 7:45] Valeriy Kravchuk
Bug #64828 was marked as a duplicate of this one.
[13 Apr 2012 12:08] Valeriy Kravchuk
Bug #64971 was marked as a duplicate of this one.
[15 Apr 2012 11:40] Valeriy Kravchuk
Bug #64985 was marked as a duplicate of this one.
[16 Apr 2012 17:49] Valeriy Kravchuk
Bug #64995 was marked as a duplicate of this one.
[23 Apr 2012 12:56] Valeriy Kravchuk
Bug #65075 was marked as a duplicate of this one.
[25 Apr 2012 18:17] Valeriy Kravchuk
Bug #65102 was marked as a duplicate of this bug.
[29 Apr 2012 9:29] Valeriy Kravchuk
Bug #65145 was marked as a duplicate of this one.
[24 May 2012 19:29] Valeriy Kravchuk
Bug #65415 was marked as a duplicate of this one.
[8 Jun 2012 5:26] Valeriy Kravchuk
Bug #65566 was marked as a duplicate of this one.
[27 Jul 2012 8:11] Philip Olson
Fixed as of Workbench 5.2.40, and here's the changelog entry:

On Microsoft Windows XP, performing a database export could
cause MySQL Workbench to crash while using the "Export to
Self-Contained File" option with a "UNC" path.