MySQL Workbench 5.1.3 Alpha For Linux Available

We’ve just finished the next alpha-release of our 5.1 version. It has become a bit more stable, we’ve cleaned up the source code, added fixes for building on distros other than Ubuntu and we’ve brushed up our packaging mechanism for Ubuntu – so we can now offer a Repository for use with apt (either on command-line or via Synaptics). There’s only one package – google’s cTemplates – that you’ll still have to install manually before handing the work over to apt to fetch and install workbench on your Ubuntu system.

So first head over to google’s cTemplate-Pages to get libctemplate0. It’s best to fetch the latest .deb package, which you can then install with one simple command like this:

sudo dpkg -i libctemplate0_0.91-1_i386.deb

The next step is to add our Repos to your apt-sources. Do this by adding following lines to your /etc/apt/sources.list file:

deb ftp://ftp.mysql.com/pub/mysql/download/gui-tools/ubuntu/ binary/
deb-src ftp://ftp.mysql.com/pub/mysql/download/gui-tools/ubuntu/ source/

Alternatively launch Synaptics (System->Administration->Synaptics Package Manager) and select Settings->Repositories, switch to the second tab-page named Third-Party Software, click [Add] and enterthe two lines above (you’ll have to addthe first line, click [Add Source] and hit [Add] again for the second line)

Now tell apt to update its repo-information. Hit the [Reload] button in Synaptics or when on cmd-line type:

sudo apt-get update

Finally tell apt to install MySQL Workbench 5.1 alpha by either locating the Package (Filed in section ‘Utilities’) and selecting it for installation or type following command at your shell prompt:

sudo apt-get install mysql-workbench

Following the steps above should result in a runable Workbench-Application on your Ubuntu-box. Note that we currently only offer i386 packages, if you need a package for some other architecture, please build it from sources. For all non-Ubuntu-users who are willing to try building workbench on their systems we have uploaded a source tarball to the following location:

ftp://ftp.mysql.com/pub/mysql/download/gui-tools/mysql-workbench-5.1.3-alpha.tar.gz
ftp://ftp.mysql.com/pub/mysql/download/gui-tools/mysql-workbench-5.1.3-alpha.tar.gz.md5

Please keep on posting/writing, we very much appreciate your input on fixes for building on other distros and your opinions and experiences. Theres another release coming this week – the next release of our GA version 5.0, so stay tuned

Perspective: Addons and Community site

Along with evolving and documenting interface for writing Workbench plugins we think about community site which will make sharing and usage of plugins within community extremely easy. Conceptually it will be close to addons.mozilla.org. Users will be able to explore directory of published addons, read description and comments on them, quickly install and rate whatever they consider necessary. To install selected addon user will have just to drag’n’drop corresponding link to Workbench, and the rest will be done by Workbench. Every addon will be supplied with manifest file describing its version, dependencies on other addons (if any), files to be installed, menu items to be added, etc. Addon has wide definition, it could be a plugin (dynamic library), set of demo models, documentation, SQL scripts, whatever. Now things are nearly in the middle of development stage. If you have ideas on how to improve the process of sharing/publication/discussion/promotion of community written addons please let us know in dedicated forum http://forums.mysql.com/list.php?155. Help us to reach a maximum of usability with Workbench community site.

MySQL Workbench 5.0.22 Coming Up – Switch to Bazaar

The next bug-fix release of MySQL Workbench is coming up this week. Tax is still working on the build, we had some unit tests failing that are now passing again. Apart from the usual bug fixes this will be the first release created out of our new Bazaar repositories, http://bazaar-vcs.org/

The team has been relying on the SubVersion source version control system which worked great for us during the last years. But as we did the branching for MySQL Workbench 5.1 we decided that it is time to move to a more advanced system. We have been looking at Mercurial http://www.selenic.com/mercurial/wiki/ but decided to go with Bazaar instead which performed excellent in our tests.

We hope to finish the WB 5.0.22 release by tomorrow and then it will take 24h for the mirrors to catch up.

MySQL Workbench and NetBeans

I just returned from a meeting with the great Sun people in Prague. The main topic of our discussions was the database support in NetBeans and their MySQL support in general. To have the best possible database integration in all of Sun’s products is one thing that is high on my personal agenda.

As the current resources working on the NetBeans database integration are limited we looked into utilizing what we have done in MySQL Workbench to get a more powerful database interface into the hands of NetBeans users. But there are a few things that make this approach quite difficult. First, the two tools are using different development languages. Just to name a few. NetBeans is written in Java while MySQL Workbench is written in C/C+. MySQL Workbench does not include any query functionality yet and we are still working on the multi-platform support.

Still, we had good discussions and are currently working out a plan to overcome all these obstacles and help NetBeans users have an improved database experience.

While in Prague, Kaj Arnö and I gave talks at the Prague University. While Kaj was covering all MySQL related topics I was focusing on MySQL Workbench of course. People there asked a lot of questions and the feedback we got was pretty good.

We are currently working to get the next bug-fix release of WB 5.0 built. The release should happen soon.

In parallel we are making progress with WB 5.1, namely the Linux port. Maksym has GRT module loading working and is continuing to write makefiles and adjustments to the code to making everything compile. Stay tuned.

On the Workbench Canvas Performance

Some people might have noticed that Workbench runs very slowly and flickers a lot in their machines. Other people will be able to work without noticing any significant sluggishness with the diagram graphics. The difference is because Workbench’s custom canvas may use hardware accelerated OpenGL graphics or non-accelerated software rendering, depending on the system (ie, whether or not a 3D accelerated graphics card is available or not). We were expecting that the most reasonably recent machines (maybe 5 years old or less) would have at least some basic graphics acceleration, but for some reason, that seems to not always be the case. Apparently, some people that have decent systems with ATI or Intel cards seem to get the fallback software rendered canvas, which will result in sluggish graphics.

We are still not sure why Cairo/Glitz (the underlying graphics library used by our drawing canvas) is not working as intended for everyone, but we are working on getting this performance problem solved in at least two fronts:

  • one is to add support for the Windows GDI backend of Cairo, which seems to be faster than the software based OpenGL rendering provided by Mesa. We already use that for Windows printing, so we get that for almost free;
  • another thing that’s being worked on is general drawing optimization, so that the number of redundant drawing operations is minimized. Those changes should make Workbench work much faster and smoother for everyone, as we intended to have from the beginning.

So expect future versions to have an improved canvas and Workbench will be much faster when you work on larger models.

WB Team Back From Vacation

The team was on vacation during the holidays (a well deserved one I hope) and today is the first day the full team is back. Our plan is to keep our main focus on bug fixes and also start working on the plugin-writing/scripting tutorials. We also have to add more hooks at various places in the tool so people interested can add their stuff wherever it needs to be added.

Starting on the 14th of January we will travel to the MySQL company meeting and we will try hard to get a new release out before that – including as many bugfixes as possible.

Next Workbench Beta About To Be Released

We are just in the process of running the final 5.0.10 builds. If Johannes does not discover any last-minute major bug we are going to upload to the mirrors soon and the release will be available tomorrow. The complete build and packaging process is now fully scripted.

The community did an amazing job in reporting bugs – there were a lot of issues that slipped through the first release. And so did the team. 75 bugs were closed since the 5.0.9 release in just 9 days. If we can keep that pace we will reach RC even sooner than I expected.

A lot of P1 and P2 bugs have been closed, we still have a load of P3 + P4 to go and I hope the stream of bugs keeps getting in, so we discover all issues soon. My biggest concern is about some threading issues we seem to have in the core which causes “random” crashes. We will run stress tests to trace those down during the next weeks.

Ok, builds have finished, now the last QA test are taking place.

Check your video subsystem

As most of you probably know now, Workbench supports two visualization modes: hardware & software based. Unfortunately automatic switcher was not in place by the time when beta version came out (will be fixed in a week), so some of you, who don’t have video subsystem supporting OpenGL v1.5, will encounter error on start when trying to run hardware based configuration. Note v1.5 is a minimum required version of OpenGL needed to start Workbench. You can get detailed information about your video subsystem using one of these tools: OpenGL-Extension-Viewer or GPU-Caps-Viewer. Both of them support export into xml file, so you can also easily attach your video configuration to your bug report when needed.

Standard Edition Beta Testing Program

It has only been two days since I have announced the official Beta of Workbench and (after taking today off to do some snowboarding) I am amazed by the number of people who have already signed up for the Standard Edition Beta Testing Program.One question was asked by several people and that is, how often are we going to release new Beta builds? We are trying to release a build of OSS Edition and SE every 2nd week and always have the most critical bugs reported fixed.Edit: Please notice that the SE Beta Program has now been closed.