03 October 2009

A year in review; new direction.

It has been more than a year since my self-imposed hiatus from serious MySQL development started and I think it is about time that I get back into the saddle. I have a handful of working prototypes but I should get the code out there, back into the community.

I learned a bunch of stuff during the past year at Google but in the end, working on JavaScript, HTML/CSS and Google proprietary languages didn't really suit me during my role as SRE. (Also the 2-3 hours spent every day commuting to and from the office took it's toll)

My immediate plan is to look for another job which would allow me to finish off the patches I have been toying with:

  • constifying the server code so that GCC can make smarter decisions and generate more optimal object code.
  • Splitting the parser. Removing the stored procedure implementation from the main parser yet preserving functionality and allowing alternate implementations to be installed. Use some modern bison features.
  • Remove the direct use of Protocol class from most of the server core.
  • External Language Stored Procedure rewrite. It will be simpler than current fork and to take advantage of all the previous items.
  • Various bug fixes.


I also want to get more engaged again with the MySQL community and hopefully will have new and exciting stuff to present at the UC next year.

17 September 2009

Eraser ...

I let a couple of these pass by but just thought I'd mention it (just in case any other ex-MySQLer is experiencing anything similar...

Why does the MySQL bugs system remove former employees from the historical record?

Date: Thu, 17 Sep 2009 20:26:35 +0200
From: Bug Database
Subject: #29838 [Csd]: myisam corruption using concurrent select ... and update
In-reply-to:
X-Originating-IP: [140.98.193.23]
To: antony.curtis@ieee.org
Message-id: <200909171826.n8HIQZU6002514@bugs.mysql.com>
MIME-version: 1.0
Content-type: text/plain; charset=utf-8
Content-transfer-encoding: 8BIT
X-Bug: 29838
X-Bug-URL: http://bugs.mysql.com/29838
X-Bug-Category: Server: MyISAM
References:
X-Authentication-warning: bugs.mysql.com: apache set sender to
bounce+antony.curtis=ieee.org@bugs.mysql.com using -f

Dear developer, the bug assigned to you for review has been re-assigned to .

Updated by: James Day
Reported by: Shane Bester
Category: Server: MyISAM
Severity: S2 (Serious)
Status: Closed
Changeset: http://lists.mysql.com/commits/31944
Version: 4.0.30, 4.1.23, 5.0.46BK, 5.1BK, 6.0.1
OS: Any
Tags: concurrent_insert, error 127, corruption
Assigned To: Ingo Strüwing
Priority: P1 (Critical)
-Affected issues: 17915,16700,15911,15439,17046,15681,15442,14965,16745,18487,15427,18623,19293,21309,23978,23763
+Affected issues: 17915,16700, 15911,15439, 17046,15681, 15442,14965,
16745,18487, 15427,18623, 19293,21309, 23978,23763
-Reviewer: Antony Curtis [done]
+Reviewer: Bugs System [done]

Reviewer: Sergey Vojtovich [done]
Internal Tags: sr5_1
Affects customer: Yes
Triage:

[No new comments]

25 July 2009

Celebration of forks?

This blog post was inspired by Masood Mortazavi's comment: "OSCon to be somewhat disappointing this year -- many low quality sessions and a celebration of forks"

I did not attend OSCON, even though I live in California. I did not even bother to submit a presentation proposal, even though people who attended my talks at the MySQL Conference and Expo earlier this year and the year before, all greatly enjoyed it. I have even received emails from people suggesting that I present the talks at OSCON, FOSDEM etc. Just to clarify: I have not submitted any proposals, anywhere (except a tentative volunteer at a MySQL Los Angeles Meetup, mostly because it's on the route home that I drive. Note to self: I need to confirm a date).

I must admit that my enthusiasm for MySQL has been on the wane since there has been so little interest in proactively incorporating the work that I have done. I haven't done any hacking on MySQL (or any of its forks) in several months.

Sun/Oracle must fix the mistakes of the past and cannot continue to develop MySQL in the same way that MySQL has been developed for the past 4 years. The development needs to be open and embrace the work that is happening outside of Sun. MySQL first started alienating open-source developers by persevering with using BitKeeper for several years past the point where it should have been abandoned and Sun has continued the alienation by having a closed development process - which left seasoned developers, such as myself, surprised with the MySQL 5.4 announcement.

Open source does not like surprises.

Today, it still seems that "official" development is still very closed. We only see intermittent pushes to the "public" LaunchPad pushes: The 5.4 repository is 3 weeks old; the 5.1 and 5.0 repositories are about 2 weeks old. In the bad-old BitKeeper days, the community can see the repository via bkbits but now, nada.

Sun! Please! Open up the development and interact with the community before the goodwill of the MySQL brand disappears. It is not good enough just to continue as how MySQL AB was handling the development during the last few years before it was acquired: That was broken already. Have all your developers push to public repositories. Make the pushbuild results public. Proactively work to incorporate contributions with the knowledge that the contributors are often not paid to work on MySQL: They are a volunteers with only a small amount of time available.

My regular employment at Google does not involve any MySQL development work. Google does not (and probably never will) use my external stored procedures patch for MySQL, for example. Some of you are probably thinking "Googlers have 20% time": So what? Perhaps I want to spend my "20% time" doing something more fun and productive than continuously merging a patch which will never be pushed? And just whose fork of MySQL am I supposed to develop and contribute to?

Just my 2¢.