Today's Page Hits: 1277
Test stressing OpenSolaris with MySQL
|
Over the last months I have seen some impressive presentations about Open Solaris, and I wanted to give it a try. The live CD provided with opensolaris 2008.05 is very easy to install, and so I set it up in a virtual machine. The environment looks familiar for a seasoned Linux user, and thus I decided to use it as a test bed for my MySQL Sandbox, which includes a test suite that lets you run a complete test with little effort. |
|
Well, little effort for you, maybe, but not for the operating system. The test puts a lot of stress on the operating system, as you can see from this picture. Running a complete test for a single version (1 single server + 3 replicated, + 3 circular, + 3 multiple, + 1 custom group = 11 servers) is already demanding. But since in my Mac I dare run the test with 7 concurrent versions for a total of 77 instances of MySQL, and I have still memory to spare, I ran a test with 2 versions on 2 virtual machines, one with Ubuntu 8 and one with Open Solaris. I am sorry to say that opensolaris did not fare well with this test. The Linux virtual box, with 512 MB of RAM, ran 22 MySQL instances without trouble. The opensolaris box, with 1 GB of RAM, ran out of memory after 18 instances. |
|
Nothing to be afraid of, though. From this negative test I got some useful experience. I asked for help in the opensolaris forums, and I got quick and smart advice from an active and vibrant community (thanks folks!). I haven't solved the problem, but I got enough information to file a proper bug report. According to someone in the forum, that's not even a bug, but the expected way of opensolaris of dealing with memory allocation requests, which is allegedly safer than Linux.
I am not in a position to judge who's right, but perhaps someone in the audience is better qualified to provide an objective answer to this problem. For now, I will just lean back in my chair and wait for comments.
UPDATE It looks like it's more a Linux than a Solaris fault. If you set vm.overcommit_memory=2 in sysctl.conf, as suggested in the comments, Linux will fail even earlier than opensolaris.
Posted at 01:00AM Jul 05, 2008 by Giuseppe Maxia in mysql | Comments[6]
Hidden jewels in MySQL Bazaar trees
![]() |
If you have followed the steps to get From Bazaar To Sandboxes In 5 Moves, you will have now the current MySQL versions in your disk. But what if you need some older versions? According to MySQL lifecycle policy, MySQL 3.23 and 4.0 are not supported anymore, and you won't find their binaries in MySQL download pages. However, the source code is still published, as it must, to comply with the GPL. Where is it? The code for MySQL old versions is contained in every newer version. The only information you need to branch it is the name of the tag for that specific version. For that, we ask Bazaar itself.
And we will get a long list, which I trimmed for brevity sake. |
NULLMERGE 1810.2153.3
base_4_16217 1810.1340.2
beta-3.23.23 71.1.3
mysql-3.23.22-beta 4
mysql-3.23.24-beta 83.1.3
mysql-3.23.27-beta 217.1.9
mysql-3.23.28-gamma 280
mysql-3.23.29a-gamma 400.1.1
mysql-3.23.30-gamma 455
mysql-3.23.31 489
[ ... ]
mysql-3.23.58 676.294.51
mysql-4.0.1 973.14.24
mysql-4.0.2 1073
[ ... ]
mysql-4.0.28 1346.887.6
mysql-4.0.30 1346.891.8
mysql-4.1.1 1616.1.25
mysql-4.1.2 1616.440.5
[ ... ]
mysql-4.1.22 1616.2842.2
mysql-4.1.23 1616.3066.4
mysql-4.1.24 1616.3137.2
mysql-5.0.0 1624.1.20
mysql-5.0.1 1624.12.54
mysql-5.0.2 1659.9.4
[ ... ]
mysql-5.0.42 1810.2982.2
mysql-5.0.44 1810.3132.2
mysql-5.0.45 1810.3132.6
[ ... ]
mysql-5.1.11 2154.34.2
mysql-5.1.12 2303.16.23
mysql-5.1.13 2303.78.1
[ ... ]
The earliest version we can get is MySQL 3.23.22. Let's do this archeological expedition.
We can branch the old version from a remote tree or from a local one.
$ cd $HOME/install/bzr/shared
The following two commands will bear the same result. The second one, being all local, will be much faster.
$ bzr branch -r tag:mysql-3.23.22-beta lp:mysql-server/5.1 branch_3.23.22
$ bzr branch -r tag:mysql-3.23.22-beta 51 branch_3.23.22
51 is the name of the directory containing the 5.1 tree, as seen in this exercise
Or we can checkout the code. The difference is that a branch will preserve all the revision control information, while a checkout will not. The checkout will be about half the size of a branch.
$ bzr checkout -r tag:mysql-3.23.22-beta 51 checkout_3.23.22
Now, if you really feel like running MySQL 3.23.22, check the manual and build it. I can only tell you that it actually works, but there is no support for this version, so don't bother submitting any bugs for it!
Posted at 06:00AM Jun 23, 2008 by Giuseppe Maxia in mysql | Comments[0]
Sun Tech Day in Cagliari
|
Five years after coming back to Italy from abroad, I am about to hold the first official work-related event in my hometown of Cagliari, Sardinia. Since 2003, I have been on the podium many times, but each presentation meant a flight across the sea. Thanks to Sun's Tech Days initiative, the University of Cagliari is hosting an event where Sun employees and well known community members will talk about top notch technology. The agenda covers Open Solaris and ZFS, Sun SPOTS, Java and Spring, creative MySQL programming. The university will present a quality assurance project applied to Java.
|
Posted at 12:06AM Jun 13, 2008 by Giuseppe Maxia in mysql | Comments[2]
MySQL Sandbox University lesson - June 12, 14:00 GMT
On Thursday, June 12, at 15:00 CEST (14:00 GMT), there will be a MySQL University Lesson on MySQL Sandbox, a tool to install one or more side server in a few seconds.
To attend the lesson, follow the instructions for attendees and download the recommended material.
Posted at 07:58PM Jun 11, 2008 by Giuseppe Maxia in mysql | Comments[0]
Funny moments at Rome University presentation
There were some funny moments during the conference at Rome University.
Before Marten's arrival, we built an impressive heap of fluff dolphins on the desk.

For convenience, Marten used my laptop (an Apple MacBook) for his presentation, and he remarked about "open source enthusiasts who use closed source software". Mac OSX is, indeed, not open source, but it is the friendlier closed source operating system around. And since I am not a zealot, but I use what is best for me, I can cope withApple. My Mac has all the applications I am used to in Linux, with more pleasant graphics, media, and networking features. This is my personal opinion, and YMMV. Back to the topic.

After the presentation, there was a Q&A session. When Marten said he was ready to take questions, I addressed the audience in Italian, saying that we could take questions in Italian and translate them. Marten added immediately "and we can take questions in Swedish and Finnish at no extra charge".
We gave one fluff dolphin to everyone who asked a question. The audience appreciated it. The questions were frequent and spontaneous, and the extra dolphins were a welcome bonus.
When it was my turn to speak, on the subject of "MySQL Community How To", I started with this remark: "we have shown you the commercial dolphins. One for each question. Now brace yourselves for the open source strategy!" I grabbed two handfuls of dolphins, and threw them at the audience. I had their full attention, and they asked many questions, without further promise of dolphins.
One of the questions was "what is the reason for participating to a open source project? Why should I contribute?" And my provocative answer, which would perhaps deserve a full article to expand, was "mainly, participation in OS projects is for selfish reasons. I have an itch to scratch, and I want to ease it. If your application does 99% of what I need and I know how to do the missing 1%, by writing a patch I am solving my problem, and by submitting my patch for future releases I am making sure that I don't have to recompile the application in future releases. Thus, by looking after my interests, I am doing good to the community."
The reality is much more complex than that, but my answer pleased the audience, and I feel that it is not far from the truth.
Summing up, in addition to having a fruitful day with customers, press, and academic institutions, we had some fun as well.
Posted at 07:30AM Jun 02, 2008 by Giuseppe Maxia in mysql | Comments[1]
At ease in the Aquarium
As announced by Eduardo, I have started playing with The Aquarium.
That does not mean that I sleep with the fishes, but that I am playing along with the group. And besides, dolphins are not fishes, but nonetheless they should be at ease in an aquarium.

This blogging is part of MySQL integration in Sun. Slowly but surely we are becoming aware of our surroundings and we are engaging the rest of the Sun communities.

We are learning.
Posted at 06:47PM May 29, 2008 by Giuseppe Maxia in Sun | Comments[2]
MySQL University - Lua advanced scripting
|
MySQL University is a set of public lessons held by experienced MySQL developers, to spread technical knowledge inside and outside the company. It's like a conference session, except for the physical presence. There is no traveling involved. No hotel rooms to book and restaurant bills to pay. The lessons are given over the internet, using an audio stream for the exposition, and IRC for questions from the audience. If you want to attend, check the instructions for attendees and mark your calendars: |
Thursday, May 29th, at 15:00 CEST (= 6:00am PDT, 8:00am CDT, 9:00am EDT).
The session will cover Advanced Lua Scripting, i.e. how to deal with MySQL Proxy scripts with more than basic action.
Among the topics covered:
Posted at 12:15AM May 27, 2008 by Giuseppe Maxia in mysql | Comments[1]
Open Source in Rome with Marten Mickos
Marten Mickos will visit Rome on May 30th. He will meet the press and customers in the morning, and will be the main guest at a conference hosted at La Sapienza, Rome well known University.
![]() |
Here is a raw translation of the official announcement. Marten Mickos, for seven years MySQL CEO, now Senior Database Group VP in Sun, will be in Rome on May 30th, 2008, at the Computer Sciences Department of "La Sapienza" University, to meet all - developers, technologists, decision makers, bloggers, influencers - who care for Open Source Databases. Key topics will be the open source model, the present state and the future of MySQL. Marten will speak at a 20 minutes keynote, and then will be available for Q&A. For open source enthusiasts, there will be a session of deep insight on why MySQL is useful in Web 2.0 applications and how to participate to MySQL community. Entrance is free and unrestricted. Please spread the news to all the ones who you think should be interested. |
| Agenda | |
| 16:30 | MySQL: the Present and the Future Marten Mickos, Sun Senior VP Database Group |
| 16:50 | Q&A |
| 17:30 | From Zero to Infinity. Unlimited scalability of MySQL in web 2.0 Ivan Zoratti, Systems Engineering Manager EMEA |
| 18:00 | MySQL: a community that gets you involved. Giuseppe Maxia, MySQL Community Team Lead |
When: May 30th, 2008, at 16:30
Where: Department of Computer Sciences, University "La Sapienza" of Rome.
via Salaria 113 - 00198 Roma
Posted at 10:24AM May 21, 2008 by Giuseppe Maxia in mysql |
How to lose your customers
There are several ways of alienating your customers. My recent travel to the United States put me in contact with at least two.

Posted at 08:41AM May 16, 2008 by Giuseppe Maxia in Personal | Comments[1]
Speaking at the Italian Free Software Conference
I am speaking at the Italian Free Software Conference, an event with the aim of considering the state of the art of Free Software in Italy.

The conference is held in Trento, Italy, sponsored by public institutions, the local university, and private industries.
My session is about MySQL as open database, which is a philosophical walkthrough of how MySQL has become successful, why Sun has bought it, what is in store for the future.
Posted at 06:05AM May 16, 2008 by Giuseppe Maxia in Sun |
Who's the geek?
An article on PostgreSQL online gives a quick assessment of the difference between MySQL and PostgreSQL.
PostgreSQL people look like a gang of geeks and Martin Mickos looks polished

Who's the geek in this picture? 
Posted at 06:04PM May 08, 2008 by Giuseppe Maxia in mysql | Comments[5]
Friendly encounters at CommunityOne
Close encounter of the sun Communities in San Francisco.

Josh Berkus and yours truly enjoyng the company friendly environment.

Posted at 08:32PM May 06, 2008 by Giuseppe Maxia in mysql |
Slides from Creative Programming talk
Thanks to all the attendees to the session on creative programming with MySQL at CommunityOne.
As announced, the slides are online.
3.5M (PDF)
Enjoy!
Posted at 01:29AM May 06, 2008 by Giuseppe Maxia in mysql | Comments[1]
Creative programming with MySQL
![]() | Programming databases is tricky. If you need the basic access only, any programming language can do. But when you want to get some advanced feature, you face difficult choices. If you are lucky, the feature you are looking for is available in a library compatible with your language of choice. But usually it happens that you are writing in Java, and your life-saving routine is only available in Perl, or you are writing in PHP and striving for features that are buried deep into a Java class. Hard choices. But it does not have to be that way. Sometimes, you can develop closer to the server, in such a way that any client, using any programming language, can access your extended routine. MySQL, although not as equipped with built-in features like some competitors, is nonetheless particularly suited for such this kind of creative programming. Using the different engines available by default, you can combine features creatively. |
For example, you can combine Federated tables and triggers to create conditional code. You can execute different triggers for the same event on the same table, depending on which federated table you call, or you can create cascaded triggers for one table. A recent addition to MySQL flexibility is MySQL Proxy, a friendly helper that sits between client and server and allow you to change behavior or create new features on the fly. This topic is quite vast, and I could speak for hours about that. As it happens, I will be speaking on this topic for one hour at CommunityOne. If you are around, come along, at 12:25, Esplanade 307. | ![]() |
Posted at 07:46PM May 01, 2008 by Giuseppe Maxia in mysql |
Yet another $2.5m of MySQL starts blogging at Sun
Hello, Sun!
![]() |
I am one of the 400 employees who, on January 16, 2008, awoke at the thundering words of Marten Mickos and Jonathan Schwartz, announcing that MySQL had been acquired by Sun for $1b. Theoretically, or arithmetically, I should be worth $2.5m, and so handle with care. :) Who am I? I am a database enthusiast, with a reputation in several open source places. I am known in the Perl and MySQL communities, and you may have seen me around during some conferences, talking about unusual hacks or making jokes in heavily accented English. |
I have another, historical blog, actually, with the same name, The Data Charmer, which has become my middle name.
My current job is MySQL Community Team Lead, but until January 2008 I was a QA Developer with community links. The jump did not happen by chance. Community and QA are strictly related. I am an open source enthusiast because of the quality of my favorite open source products. It's my job to broaden the MySQL community by showing what I do, not by trumpeting announcements. When I recommend something, it's because I have tried it out, and it worked for me.
I love experimenting, and I often come up with unusual ideas to bend the stiff applications to more flexible needs. Someone calls this approach creative programming, someone prefers the term hacking. The bottom line is that I stretch my favorite tools to the limits, and I get results that, to the untrained eye, look like magic. I usually don't contradict the believers, unless they ask for the manual page where the trick is explained. Then I have to admit that most of what I did is an harmonious combination of simple elements that were initially designed for some other purpose.
Before joining MySQL, I was "in the family" for several years. I was working as a database consultant and I contributed to the community from outside. Now, I do the same from the inside. Growing the community is my task, and I have three dedicated fellows in my team, who share the burden of managing a worldwide community spread across all continents.
Europe has the lion share, since I and my boss, Kaj Arnö, live in that continent. The astute reader will have noticed that there is nobody covering Latin America and Africa, and also Russia is largely neglected. We know it. We are making plans.For now, that was an introduction. Hello, Sun, here we come! More on MySQL in my next posts.
Posted at 01:34AM May 01, 2008 by Giuseppe Maxia in Sun | Comments[4]