Re: Best suiting OS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 4 Oct 2009, Mark Mielke wrote:

I can show you tickets where RedHat has specifically state they *will not* update the kernel to better support new hardware, for fear of breaking support for older hardware.

There are two reasonable paths you'll find in the Open Source world, which mirror the larger industry at large:

1) Branch a stable release rarely. Sit on it for a while without changing anything before release. Backport only critical stuff (important bug fixes) into the stable version once it's out there. Support that version for years. Examples of this model include RedHat and PostgreSQL, albeit with the latter having a much more regular release schedule than most "long-term release" pieces of software.

2) Branch a stable release often. Push it out the door with fairly recent components. Backport little, because a new release is coming out the door soon enough anyway. It's impossible for this model to backport as much as (1), because they have so many more releases to handle, and there's no pressure to do so because "upgrade to the latest release to fix" is usually an options. Examples of this model include the Linux kernel proper and Ubuntu.

My personal belief is that (2) never leads to stable software, and that for the complexity level of the projects I follow you're lucky you can get a stable version of one piece of software if you focus on it about every year. Once every two years would be better, because as you correctly note it takes about that long for many hardware drivers to go from cutting-edge to old, and that would give less disruption to admins.

That is unfortunately both more aggressive than the "long-term release" stable versions provided by RedHat and less than the hyper-aggressive schedules you'll find in Ubuntu and Fedora. It does happen to be very close to the PostgreSQL stable release frequency though:

8.0 2005-01-19
8.1 2005-11-08
8.2 2006-12-05
8.3 2008-02-04
8.4 2009-07-01

RedHat does a commendable job of backporting way more stuff than anybody else I'm aware of. The SATA issues you mention are actually a worst-case for their development model. The big SATA switch-over with "Parallel PATA merge" happened in 2.6.19. My recollection is that this was such a mess at first is basically forced RedHat to release RHEL5 with 2.6.18, as there wasn't expected to be a stable ATA stack from the resulting chaos for a few releases they could use; anecdotally, I didn't find Linux re-stabilized until between 2.6.20 and 2.6.22, depending on your hardware.

I contrast this with Ubuntu, which I can't accept as a server because nothing I run into *ever* gets backported. I know they backport something, because I see the changelogs, but never what I run into. I encounter a bug or two in ever new Ubuntu release that makes life difficult for me, and in every case so far the "resolution" was "fixed in <next letter>". In two of those cases I recall I saw the same bug fix (from an upstream package) was backported into RHEL.

All 7 of the machines I installed RHEL 5.3 on *failed* to detect the SATA controller, and the install process completed at 2 Mbyte/s. After the machines were up, I discovered the issue is a known issue, and that RedHat would not patch the problem, but instead suggested a change to grub.conf. Is this stable?

With all due respect, this was operator error on your part. Buying the hardware and then guessing that everything will work out fine with the OS install isn't ever a path to stable either. I (and every other person who deals regularly with RHEL on increasingly new hardware) could have told you this was going to be a disaster, that you don't try to provision a server using native SATA with unknown compatibility on that OS. I don't have this problem (for the database servers at work at least--suffered through it plenty with random white boxes). I buy from a vendor who figures this out and old sells me stuff that works on RHEL. You have a larger process problem you can't blame on the software.

They finally back-ported FUSE - but did you know their 2.6.18 kernel has something like 3000 patches that they maintain against it? Does this not sound insane? How do you provide effective support for a kernel that has 3000 back ported patches against it?

How exactly is this any different from "effective support" for the kernel at large, which integrates way more patches than that between releases? I see RedHat as having a much smaller set of patches to manage, which is one reason their releases are more stable than "pick a random kernel release".

--
* Greg Smith gsmith@xxxxxxxxxxxxx http://www.gregsmith.com Baltimore, MD

--
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux