Michael “Monty” Widenius, original developer of the open-source database MySQL, put a damper on Sun Microsystems’ recent release of MySQL 5.1 with his now-infamous Nov. 29 blog post trashing the company’s decision to give the update a “generally available” designation.
Widenius warned users to be “very cautious about MySQL 5.1” because “there are still many known and unknown fatal bugs in the new features that are still not addressed.”
Widenius’ comments sparked considerable debate last week, with some observers questioning how long he’d remain at Sun — which bought MySQL in January for US$1 billion — in light of such public insubordination. Sun confirmed earlier this year that Widenius was considering leaving the company, and his fellow MySQL co-founder David Axmark already has.
But a senior Sun executive says Widenius remains there and that his public criticisms reflect Sun’s open-source ethics.
“I learned over many years about the benefits and the painfulness of absolute transparency in open source,” said Marten Mickos, senior vice president of Sun’s database group, in an interview Monday. “A little bit of debate never hurts. This is part of being an open-source company. … people are free to blog about what they want.”
In his blog post, Widenius pointed blame directly at Mickos. “We have changed the release model so that instead of focusing on quality and features our release is now defined by timeliness and features. Quality is not regarded to be that important,” he wrote. “To quote Marten Mickos: ‘MySQL 5.1 will be release[d] as GA in or before December because I say so.’ Marten’s reasons for this is that he needs something he can sell and a release marked ‘GA’ is much easier to sell than a release marked ‘RC.'”
Mickos declined to address specific points Widenius made in the post, but said the 5.1 release is “great” and that he is “very confident” with it. The release has been downloaded more than 250,000 times in its first 10 days of general availability, according to Sun.
Meanwhile, Widenius sought to clarify his position in a follow-up comment on his blog Sunday.
“I think that MySQL 5.1 is a good *recommended* release, especially now when MySQL/Sun is providing full support for it,” Widenius wrote. “What I disagree with is giving MySQL 5.1 a GA status, which at least for me, implicates [it] has no crashing or other serious bug that affects normal operation. That said, work on MySQL 5.1 continues and if things goes well we reach this goal more sooner than later.”
Other MySQL team members are vigorously defending the company’s decision to place MySQL 5.1 in GA status.
“I absolutely trust the judgment of MySQL management and the ability of my fellow engineers,” wrote Chistopher Powers, senior software engineer, in a blog post Sunday.
“I have developed operating systems, telecommunication software, database microkernels, medical device firmware and, most importantly, applications for the wholesale distribution of beer,” he added. “Every single one of these products shipped with known bugs — serious bugs — and every single one of these products shipped with at least someone strongly questioning the decision to ship. Every single one. … And the bugs got fixed and then we moved on. We moved on.”
And in a lengthy post published Monday, a Sun employee detailed the internal processes and logistical issues that led up to the 5.1 GA announcement.
“MySQL 5.1 didn’t start on the right foot. The effort to produce its features was underestimated, mostly because, at the time when it was designed, the company was still unearthing the architectural bugs that were haunting MySQL 5.0,” wrote Giuseppe Maxia, MySQL Community team lead.
Sun did not recklessly push out the GA release in response to marketing concerns, according to Maxia: “The desire of shipping 5.1 GA before the Users Conference 2008 was rightfully dwarfed by the discovery of new, more disturbing bugs.”
The company put out two more release candidates “while the developers fought to fix a staggering number of bugs,” he wrote.
“More than 3,500 bugs affected MySQL 5.1, and by June we had fixed 2,300 of them. There were still some outstanding critical bugs, and Marketing and Sales were pressing for a release,” Maxia added.
This was “understandable,” he said. “The economic situation of Sun was not good, the company had just cut 2,500 jobs, and we needed the new release to boost sales. However, the outstanding bugs were so bad that the people who were in direct contact with users (Support and Community Team) strongly objected to a GA declaration at that point in time. In a joint effort, we identified 40 critical bugs that needed fixing before going GA.”
The company has also kept in touch with customers and other users already using MySQL 5.1 release in production, and “we made sure that the bugs reported by these brave souls were addressed before the GA release,” he added.
That said, MySQL’s development process is “very much closed source” and could use some changes and improvements, according to Maxia. “The obstacles towards opening the development model are quite a few, and we have been working hard to meet this goal …. The important point is that everyone agrees on the need for change, and we are working toward this goal.”