Bug #48964 Crash with failed assertion when connecting to database
Submitted: 21 Nov 2009 23:48 Modified: 19 Dec 2013 18:51
Reporter: Nathan Acks Email Updates:
Status: Can't repeat Impact on me:
Category:MySQL Workbench Severity:S2 (Serious)
Version:5.2.8 Beta OS:Linux (Ubuntu 9.10 amd64)
Assigned to: CPU Architecture:Any
Tags: assertion failed, boost, connect, crash, MySQL, shared_ptr, workbench

[21 Nov 2009 23:48] Nathan Acks
When attempting to connect to a remote database server using the standard TCP/IP method, MySQL Workbench 5.2.8 beta hangs for about 20 minutes and then crashes with the message:

mysql-workbench-bin: /usr/include/boost/shared_ptr.hpp:315: T* boost::shared_ptr<T>::operator->() const [with T = sql::mysql::NativeAPI::NativeResultsetWrapper]: Assertion `px != 0' failed.

No other error messages are reported. Testing the connection in the DB Connection Manager reports that all settings are correct, and I can connect successfully from the Server Administration panel, edit users, view system variables and connections, etc.

The server in question is running MySQL 5.0.51a and contains 100+ databases with between 10 - 50 tables each (so 1000 - 5000+ tables total) and almost 200GB of data. Other tools, such as SQLyog and the MySQL command-line utility, can connect and run queries without error. MySQL Workbench itself can successfully connect to a much smaller local server running MySQL 5.1.37.

The system MySQL Workbench is being run on is a 64-bit Ubuntu 9.10 desktop. The server is also a 64-bit Ubuntu system located in Amazon's EC2.

How to repeat:
1) Attempt to connect to server.

Expected result: Successful connection in a reasonable amount of time.
Actual result: Application hangs for ~20 minutes and then crashes.
[23 Nov 2009 15:14] MySQL Verification Team
Actually the issue looks is about the large number of databases/tables. I can connect with a small environment w/o to crash.
[23 Nov 2009 18:32] Nathan Acks
I believe so. Sorry if I was unclear about this point.
[26 Nov 2009 15:52] Johannes Taxacher
could you give 5.2.9 a try? we have improved the prefetching of the schema/objects on connect so it should work better now. please ket us know if thats working out.
[30 Nov 2009 14:52] Nathan Acks
As soon as it's available for download, I'll grab it and report back.
[30 Nov 2009 15:50] Sergei Tkachenko
We patched MySQL C++ Connector (the one that is supplied with Workbench) to skip loading of DDL for every object when fetching list of schema objects. Please check with v5.2.10 which will appear very soon.
[1 Dec 2009 17:10] Nathan Acks
5.2.10 works! There's still a long pause (~30 seconds) when fetching table information from some databases, but once that's done things seem to proceed at a normal pace. Thank you.

Tested using both the 64-bit Ubuntu DEB and a version compiled from source.
[2 Dec 2009 0:39] MySQL Verification Team
According with last comments I am changing the status as To be Fixed Later.