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.