<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: system components, fsync and distribution-specific changes: a cautionary tale</title>
	<atom:link href="http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/</link>
	<description>I wuv you.</description>
	<lastBuildDate>Wed, 17 Mar 2010 19:50:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Jay Godse</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-176729</link>
		<dc:creator>Jay Godse</dc:creator>
		<pubDate>Fri, 30 Jan 2009 17:02:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-176729</guid>
		<description>This is a great article on managing the risk of any software production that includes 3rd party components. It is sage advice for anybody building application out of 3rd party FOSS stacks. 

However, I&#039;m biased. SQLite is usually not the culprit from other experiences with it. Usually when something goes wrong, it is something else. My own observations tell me that when SQLite became the storage engine for Firefox and Chrome, browser stability improved. I claim that this is a correlation only, but my gut tells me that SQLite contributed to the robustness.</description>
		<content:encoded><![CDATA[<p>This is a great article on managing the risk of any software production that includes 3rd party components. It is sage advice for anybody building application out of 3rd party FOSS stacks. </p>
<p>However, I&#8217;m biased. SQLite is usually not the culprit from other experiences with it. Usually when something goes wrong, it is something else. My own observations tell me that when SQLite became the storage engine for Firefox and Chrome, browser stability improved. I claim that this is a correlation only, but my gut tells me that SQLite contributed to the robustness.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: shaver &#187; fsyncers and curveballs</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-123388</link>
		<dc:creator>shaver &#187; fsyncers and curveballs</dc:creator>
		<pubDate>Sun, 25 May 2008 14:04:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-123388</guid>
		<description>[...] have been other bugs along the way that could cause this, ranging from performance problems with certain sqlite versions to bad interactions with the data set used for malware protection, but those were put behind us by [...]</description>
		<content:encoded><![CDATA[<p>[...] have been other bugs along the way that could cause this, ranging from performance problems with certain sqlite versions to bad interactions with the data set used for malware protection, but those were put behind us by [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: blizzard</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-123040</link>
		<dc:creator>blizzard</dc:creator>
		<pubDate>Sat, 24 May 2008 16:27:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-123040</guid>
		<description>Kevin: 2.10 isn&#039;t on a lot of the distros that have Enterprise lifecycles.</description>
		<content:encoded><![CDATA[<p>Kevin: 2.10 isn&#8217;t on a lot of the distros that have Enterprise lifecycles.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Kofler</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122722</link>
		<dc:creator>Kevin Kofler</dc:creator>
		<pubDate>Fri, 23 May 2008 21:17:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122722</guid>
		<description>&gt; FF3 will require GTK 2.10

You call that &quot;bleeding edge&quot; and/or &quot;far ahead of the distros&quot;? Fedora has been shipping GTK+ 2.10 since Fedora Core 6 which isn&#039;t even supported anymore, and 2.12 since Fedora 8 which isn&#039;t even the latest version anymore (Fedora 9 is). Rawhide already has GTK+ 2.13 (the development branch heading towards 2.14), so presumably Fedora 10 will have 2.14.

&gt; We&#039;re very involved with them and know that that particular issue
&gt; that Fedora ran across was fixed in a later version. We&#039;re just too
&gt; late in our cycle to take that new package since it would invalidate
&gt; the beta cycle that over 1 million have taken part in.

But Fedora Rawhide isn&#039;t in this stage of the cycle, but in pre-alpha stage, so I suppose (again, it&#039;s not me maintaining sqlite) that this will get fixed in Rawhide by upgrading sqlite, not downgrading it.</description>
		<content:encoded><![CDATA[<p>&gt; FF3 will require GTK 2.10</p>
<p>You call that &#8220;bleeding edge&#8221; and/or &#8220;far ahead of the distros&#8221;? Fedora has been shipping GTK+ 2.10 since Fedora Core 6 which isn&#8217;t even supported anymore, and 2.12 since Fedora 8 which isn&#8217;t even the latest version anymore (Fedora 9 is). Rawhide already has GTK+ 2.13 (the development branch heading towards 2.14), so presumably Fedora 10 will have 2.14.</p>
<p>&gt; We&#8217;re very involved with them and know that that particular issue<br />
&gt; that Fedora ran across was fixed in a later version. We&#8217;re just too<br />
&gt; late in our cycle to take that new package since it would invalidate<br />
&gt; the beta cycle that over 1 million have taken part in.</p>
<p>But Fedora Rawhide isn&#8217;t in this stage of the cycle, but in pre-alpha stage, so I suppose (again, it&#8217;s not me maintaining sqlite) that this will get fixed in Rawhide by upgrading sqlite, not downgrading it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christopher Blizzard &#187; Blog Archive &#187; mozilla unit testing on linux</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122710</link>
		<dc:creator>Christopher Blizzard &#187; Blog Archive &#187; mozilla unit testing on linux</dc:creator>
		<pubDate>Fri, 23 May 2008 20:41:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122710</guid>
		<description>[...] Rob Campbell posted a howto for people who want to run Mozilla unit tests on Linux. If you&#8217;ve ever wondered how to do it, it&#8217;s a decent overview on how to get started. And it&#8217;s pretty relevant to what I posted yesterday. [...]</description>
		<content:encoded><![CDATA[<p>[...] Rob Campbell posted a howto for people who want to run Mozilla unit tests on Linux. If you&#8217;ve ever wondered how to do it, it&#8217;s a decent overview on how to get started. And it&#8217;s pretty relevant to what I posted yesterday. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: blizzard</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122707</link>
		<dc:creator>blizzard</dc:creator>
		<pubDate>Fri, 23 May 2008 20:36:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122707</guid>
		<description>Rob posted a howto on how to run unit tests on Linux:

http://antennasoft.net/robcee/2008/05/22/howto-unit-testing-linux/</description>
		<content:encoded><![CDATA[<p>Rob posted a howto on how to run unit tests on Linux:</p>
<p><a href="http://antennasoft.net/robcee/2008/05/22/howto-unit-testing-linux/" rel="nofollow">http://antennasoft.net/robcee/2008/05/22/howto-unit-testing-linux/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: blizzard</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122701</link>
		<dc:creator>blizzard</dc:creator>
		<pubDate>Fri, 23 May 2008 20:15:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122701</guid>
		<description>Big wrap-up from all these comments:

Jeff had a question about security.  So at Mozilla we carefully monitor all of those other projects very carefully because we already have to ship them for our other platforms.  And we have a long history of delivering timely security updates to users.  We would issue an update and distros would know.  That being said, we&#039;re sensitive to that particular issue.  But my post was more about testing + reliability than security updates.

Simon talked about being on the bleeding edge.  What&#039;s interesting is that for many things we&#039;re far ahead of the distros in terms of what&#039;s required.  Our cairo is right at the most recent release and FF3 will require GTK 2.10, for example.  We&#039;re moving and driving faster than most people can absorb our code.  And we&#039;re driving upstream faster and faster, too.

Simon also talked about leaving it up to the distro folks to determine compatibility.  Well, they do that today and we know that it&#039;s not working every time.  It&#039;s pretty clear that _no one_ is running tests beyond simple smoketesting and using users as beta testers.  If distros were doing what you suggest, then it would probably much more acceptable.  But they aren&#039;t.

Havoc: Lots of good points but in terms of memory usage there&#039;s a lot of lower hanging fruit vs. including libraries.  For example, Pango right now eats tons and tons of memory per process vastly eclipsing the memory that might be saved by including libraries.  And I&#039;m not talking about including private copies of pango or gtk.  We&#039;re generally compatible with those because they are relatively mature.  But cairo and sqlite as examples - we&#039;re at the edge there.  We generally know what&#039;s wrong before everyone else does.  I specifically remember chasing Carl and Behdad to fix a bug in the X servers (I think Owen finally fixed it?) that we could easily reproduce but no one else could.  We&#039;re involved in the projects that we&#039;re shipping and we know what&#039;s going on.  So your comments about X compatibility are important and illustrative but they don&#039;t really reflect the situation on the ground that we&#039;ve seen through this release.

Regarding upstreaming and adding value, we would _love_ to have distro involvement in upstream but it&#039;s been pretty tough.  Chris and Alexander have both been pretty involved but a lot of that is patch and fix maintainance.  We have a serious lack of leadership from the distributions.  No one is showing up.  

Regarding your comments about communication and individual patches, I couldn&#039;t agree more.  That&#039;s not there today, or at least it&#039;s not formalized.  And it&#039;s the key.  And that was a huge part of my point.  For those folks who aren&#039;t doing that and communicating and testing people just shouldn&#039;t be making changes or assuming that system versions should work.  But we see a lot of that from the mainline distros, too.  Changes for change&#039;s sake.  That&#039;s not value by any stretch.

And we can&#039;t scale that to 15 distributions.  Or 3, really, that&#039;s just not a reasonable thing to expect Mozilla to shoulder.  We need to find a way for the distros to handle that load or at least turn it into a multiplier where everyone is helping each other.  My suspicion is that should happen in upstream Mozilla as part of the larger project.

Faidon, Debian&#039;s anti-branding doesn&#039;t have anything to do with making changes.  It has everything to do with the image licensing in the package as someone else here pointed out.

Matt: we are working with the sqlite developers, every single day, and continue to on this particular issue.  We&#039;re very involved with them and know that that particular issue that Fedora ran across was fixed in a later version.  We&#039;re just too late in our cycle to take that new package since it would invalidate the beta cycle that over 1 million have taken part in.

Kevin: once again, it&#039;s not about upgrading or downgrading (and we work with the sqlite developers _all the time_ .  (We help back the sqlite foundation as well as work with people.)  It&#039;s a question of compatibility and what&#039;s tested.  You&#039;re talking about the world as you would like it as opposed to how it is.  And I&#039;m sorry your package manager doesn&#039;t offer that kind of flexibility. :(</description>
		<content:encoded><![CDATA[<p>Big wrap-up from all these comments:</p>
<p>Jeff had a question about security.  So at Mozilla we carefully monitor all of those other projects very carefully because we already have to ship them for our other platforms.  And we have a long history of delivering timely security updates to users.  We would issue an update and distros would know.  That being said, we&#8217;re sensitive to that particular issue.  But my post was more about testing + reliability than security updates.</p>
<p>Simon talked about being on the bleeding edge.  What&#8217;s interesting is that for many things we&#8217;re far ahead of the distros in terms of what&#8217;s required.  Our cairo is right at the most recent release and FF3 will require GTK 2.10, for example.  We&#8217;re moving and driving faster than most people can absorb our code.  And we&#8217;re driving upstream faster and faster, too.</p>
<p>Simon also talked about leaving it up to the distro folks to determine compatibility.  Well, they do that today and we know that it&#8217;s not working every time.  It&#8217;s pretty clear that _no one_ is running tests beyond simple smoketesting and using users as beta testers.  If distros were doing what you suggest, then it would probably much more acceptable.  But they aren&#8217;t.</p>
<p>Havoc: Lots of good points but in terms of memory usage there&#8217;s a lot of lower hanging fruit vs. including libraries.  For example, Pango right now eats tons and tons of memory per process vastly eclipsing the memory that might be saved by including libraries.  And I&#8217;m not talking about including private copies of pango or gtk.  We&#8217;re generally compatible with those because they are relatively mature.  But cairo and sqlite as examples &#8211; we&#8217;re at the edge there.  We generally know what&#8217;s wrong before everyone else does.  I specifically remember chasing Carl and Behdad to fix a bug in the X servers (I think Owen finally fixed it?) that we could easily reproduce but no one else could.  We&#8217;re involved in the projects that we&#8217;re shipping and we know what&#8217;s going on.  So your comments about X compatibility are important and illustrative but they don&#8217;t really reflect the situation on the ground that we&#8217;ve seen through this release.</p>
<p>Regarding upstreaming and adding value, we would _love_ to have distro involvement in upstream but it&#8217;s been pretty tough.  Chris and Alexander have both been pretty involved but a lot of that is patch and fix maintainance.  We have a serious lack of leadership from the distributions.  No one is showing up.  </p>
<p>Regarding your comments about communication and individual patches, I couldn&#8217;t agree more.  That&#8217;s not there today, or at least it&#8217;s not formalized.  And it&#8217;s the key.  And that was a huge part of my point.  For those folks who aren&#8217;t doing that and communicating and testing people just shouldn&#8217;t be making changes or assuming that system versions should work.  But we see a lot of that from the mainline distros, too.  Changes for change&#8217;s sake.  That&#8217;s not value by any stretch.</p>
<p>And we can&#8217;t scale that to 15 distributions.  Or 3, really, that&#8217;s just not a reasonable thing to expect Mozilla to shoulder.  We need to find a way for the distros to handle that load or at least turn it into a multiplier where everyone is helping each other.  My suspicion is that should happen in upstream Mozilla as part of the larger project.</p>
<p>Faidon, Debian&#8217;s anti-branding doesn&#8217;t have anything to do with making changes.  It has everything to do with the image licensing in the package as someone else here pointed out.</p>
<p>Matt: we are working with the sqlite developers, every single day, and continue to on this particular issue.  We&#8217;re very involved with them and know that that particular issue that Fedora ran across was fixed in a later version.  We&#8217;re just too late in our cycle to take that new package since it would invalidate the beta cycle that over 1 million have taken part in.</p>
<p>Kevin: once again, it&#8217;s not about upgrading or downgrading (and we work with the sqlite developers _all the time_ .  (We help back the sqlite foundation as well as work with people.)  It&#8217;s a question of compatibility and what&#8217;s tested.  You&#8217;re talking about the world as you would like it as opposed to how it is.  And I&#8217;m sorry your package manager doesn&#8217;t offer that kind of flexibility. :(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peng&#8217;s links for Friday 23 May 2008 &#171; I&#8217;m Just an Avatar</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122700</link>
		<dc:creator>Peng&#8217;s links for Friday 23 May 2008 &#171; I&#8217;m Just an Avatar</dc:creator>
		<pubDate>Fri, 23 May 2008 20:10:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122700</guid>
		<description>[...] companion article to the one above, this time looking at Chris Blizzard&#8217;s warning against adding hand-picked patches to Firefox in Linux. Quite frankly if you can&#8217;t be patient for updates to come through via your [...]</description>
		<content:encoded><![CDATA[<p>[...] companion article to the one above, this time looking at Chris Blizzard&#8217;s warning against adding hand-picked patches to Firefox in Linux. Quite frankly if you can&#8217;t be patient for updates to come through via your [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin Kofler</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122380</link>
		<dc:creator>Kevin Kofler</dc:creator>
		<pubDate>Thu, 22 May 2008 20:31:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122380</guid>
		<description>Careful with that last suggestion: making this a hard error is wrong. It will prevent distributions from building against a patched version with this bug fixed. Distros don&#039;t want to have to wait for the next release of the library if they can get a patch sooner, and they won&#039;t necessarily want to upgrade rather than backport the fix either (due to things like feature freezes etc.). Fedora Core 4 got hit by such a hardcoded check against GCC 4.0.0 in KDE&#039;s acinclude.m4, every single KDE app had to be patched with some variant of this patch:
http://cvs.fedoraproject.org/viewcvs/rpms/amarok/FC-4/amarok-1.2.4-gcc4bl.patch?hideattic=0&amp;rev=1.1&amp;view=markup
or this patch:
http://cvs.fedoraproject.org/viewcvs/rpms/koffice/FC-4/koffice-admin-gcc4isok.patch?hideattic=0&amp;rev=1.1&amp;view=markup
until GCC was updated to a later 4.0.x. But the bug KDE blacklisted GCC 4.0.0 for was fixed before the FC4 release! It just wasn&#039;t 4.0.1 yet, but something inbetween. So the blacklisting was incorrect and annoying.</description>
		<content:encoded><![CDATA[<p>Careful with that last suggestion: making this a hard error is wrong. It will prevent distributions from building against a patched version with this bug fixed. Distros don&#8217;t want to have to wait for the next release of the library if they can get a patch sooner, and they won&#8217;t necessarily want to upgrade rather than backport the fix either (due to things like feature freezes etc.). Fedora Core 4 got hit by such a hardcoded check against GCC 4.0.0 in KDE&#8217;s acinclude.m4, every single KDE app had to be patched with some variant of this patch:<br />
<a href="http://cvs.fedoraproject.org/viewcvs/rpms/amarok/FC-4/amarok-1.2.4-gcc4bl.patch?hideattic=0&amp;rev=1.1&amp;view=markup" rel="nofollow">http://cvs.fedoraproject.org/viewcvs/rpms/amarok/FC-4/amarok-1.2.4-gcc4bl.patch?hideattic=0&amp;rev=1.1&amp;view=markup</a><br />
or this patch:<br />
<a href="http://cvs.fedoraproject.org/viewcvs/rpms/koffice/FC-4/koffice-admin-gcc4isok.patch?hideattic=0&amp;rev=1.1&amp;view=markup" rel="nofollow">http://cvs.fedoraproject.org/viewcvs/rpms/koffice/FC-4/koffice-admin-gcc4isok.patch?hideattic=0&amp;rev=1.1&amp;view=markup</a><br />
until GCC was updated to a later 4.0.x. But the bug KDE blacklisted GCC 4.0.0 for was fixed before the FC4 release! It just wasn&#8217;t 4.0.1 yet, but something inbetween. So the blacklisting was incorrect and annoying.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: keitai</title>
		<link>http://www.0xdeadbeef.com/weblog/2008/05/system-components-fsync-and-distribution-specific-changes-a-cautionary-tale/comment-page-1/#comment-122369</link>
		<dc:creator>keitai</dc:creator>
		<pubDate>Thu, 22 May 2008 19:50:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.0xdeadbeef.com/weblog/?p=368#comment-122369</guid>
		<description>&quot; Just screaming “you should always link against system libraries!!!!” isn’t  going to work.&quot;

Yes, the system library (like sqlite) might be buggy sometimes. But the correct fix is to talk with the upstream library people and get it fixed, not sulk and keep the non-buggy version bundled with the application. In the case of keeping a non-buggy version bundled (sqlite), you (mozilla team), are acting exactly like the distributions you are criticizing. 

If distros had used mozilla with bundled sqllite, all *other* applications would still be using the the buggy sqllite. 

Btw, if you were aware of this bug in this specific version of sqllite, why didn&#039;t mozilla&#039;s ./configure barf on detecting the buggy sqllite version?</description>
		<content:encoded><![CDATA[<p>&#8221; Just screaming “you should always link against system libraries!!!!” isn’t  going to work.&#8221;</p>
<p>Yes, the system library (like sqlite) might be buggy sometimes. But the correct fix is to talk with the upstream library people and get it fixed, not sulk and keep the non-buggy version bundled with the application. In the case of keeping a non-buggy version bundled (sqlite), you (mozilla team), are acting exactly like the distributions you are criticizing. </p>
<p>If distros had used mozilla with bundled sqllite, all *other* applications would still be using the the buggy sqllite. </p>
<p>Btw, if you were aware of this bug in this specific version of sqllite, why didn&#8217;t mozilla&#8217;s ./configure barf on detecting the buggy sqllite version?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
