Andrew Sullivan wrote:
> On Tue, May 15, 2007 at 04:52:16PM -0400, Alvaro Herrera wrote:
> > This is what happens with the Linux kernel. They have hundreds of
> > developers getting their hands dirty during a previous period. Then
> > 2.6.20 is released; the 2.6.21 "merge window" opens, and all sort of
> > patches are flooded in.
> I hasten to point out that the Linux kernel has also had several
> "stable" releases with huge bugs -- things like massive filesystem
> corruption, bizarre failure cases, and nasty compatibility problems
> with modules across versions. I am not entirely sure that the Linux
> model is the one to ape. PostgreSQL has a history with remarkably
> few of those blunders, and I'd hate to give that up.
Sorry, I wasn't trying to say that we should follow the Linux model all
that closely. I know there are regressions in the "point zero"
releases, and that there are bugs.
But then, we're nowhere near the scale of Linux. In the press release
for 8.0 we mentioned something about "hundreds of developers". This was
true -- but it was not in the same league as Linux's "hundreds of
developers". We're nowhere near the manpower that Linux has, nowhere
near the amount of code these guys change. I think the figure is around
9000 lines of code changed per day, _every day_. They have new
drivers all the time, internal interfaces are cleaned up, new facilities
are invented to support new kinds of hardware, performance improvements
are made all over the place. So there are a hundred of strange machines
where the thing does not boot; yes, but those bugs are fixed in 2.6.2x.1
or subsequent "stable branch" releases.
I dare not think of the 2.2 or 2.4 disasters, where distributions were
fond of backporting huge patches from the 2.3 or 2.5 development
branches. I compiled my own kernel from Linus' tree back then, which
worked without the strange behavior the other kernels had (maybe the
distro kernels stabilized at some point, but I didn't try later in the
game -- I was too used to compiling my own). Now with 2.6 I don't do
that anymore (of course I don't run 2.6.22 as soon as it is out either).
In my opinion Linux 2.6 is much better than Linux 2.4.
I don't think we should follow either model though. We have different
problems and different people.
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not