Re: MVCC and all that...

Álvaro Herrera <alvherre@kurilemu.de>

From: Álvaro Herrera <alvherre@kurilemu.de>
To: Justin <zzzzz.graf@gmail.com>
Cc: Ellen Allhatatlan <ellenallhatatlan@gmail.com>, Merlin Moncure <mmoncure@gmail.com>, pgsql-general <pgsql-general@postgresql.org>
Date: 2025-09-10T17:28:07Z
Lists: pgsql-general
On 2025-Sep-10, Justin wrote:

> On Wed, Sep 10, 2025 at 3:41 AM Ellen Allhatatlan <
> ellenallhatatlan@gmail.com> wrote:

> > > The author brings up threaded vs multi-process. That's an old old old
> > old old conversation that has been shown there is no clear better way.
> >
> > This is where things become interesting. Firebird actually has 3
> > process/threading models - and they manage to maintain these with a
> > team that is *_much_* smaller than the PostgreSQL one - FB is a minnow
> > compared to PG!
> >
> > AIUI, Michael Stonebraker suggested that the process model
> > would/should be "upgraded" to a threaded one at some point in the
> > system's developement?
> 
> I am going to need a source on this.  Process vs Threads: pro and cons are
> very well documented and proven today.

My recollection is that this is correct -- Stonebraker and team used a
process model because it was the expedient thing to do.  Decades later
we're still using it, but there's an ongoing effort to implement a
threaded model; there are patches already being committed for that.  See
https://wiki.postgresql.org/wiki/Multithreading
Heikki Linnakangas gave two talks on this effort, one at pgconf.eu 2023
titled "Multithreaded PostgreSQL?" and another at pgconf.eu 2024 titled
"Multithreaded PostgreSQL!".  You kinda see a progression there.
I expect the next one should be "Multithreaded PostgreSQL!!1yksitoista!"
or something.

-- 
Álvaro Herrera        Breisgau, Deutschland  —  https://www.EnterpriseDB.com/
"Find a bug in a program, and fix it, and the program will work today.
Show the program how to find and fix a bug, and the program
will work forever" (Oliver Silfridge)