From: James Mansion <james@mansionfamily.plus.com>
To: Craig James <craig_james@emolecules.com>
Cc: Bruce Momjian <bruce@momjian.us>
Cc: pgsql-performance@postgresql.org
Subject: Re: Multi-threading friendliness
Date: Mon, 17 Dec 2007 21:05:41 +0000
Message-ID: <4766E4A5.40405@mansionfamily.plus.com> (raw)
In-Reply-To: <4766CF76.1010105@emolecules.com>
References: <200712170852.lBH8qGc18697@momjian.us>
<4766CF76.1010105@emolecules.com>
Craig James wrote:
> Don't confuse thread-friendly with a threaded implemetation of
> Postgres itself. These are two separate questions. Thread-friendly
> involves compile/link options that don't affect the Postgres source
> code at all.
Indeed. I'm specifically not suggesting that Postgres should offer an
API that can be called from
anything except the initial thread of its process - just that library
subsystems might want to use
threads internally and that should be OK. Or rather, it should be
possible to build Postgres
so that its OK. Even if there's a small slowdown, the benefit of
running the full JVM or CLR
might outweigh that quite easily *in some circumstances*.
I've also hinted that at some stage you might want to thread some parts
of the implementation,
but I'm not suggesting that would be an early target. It seems to me
sensible to make it
straightforward to take baby steps in that direction in future would be
a reasonable thing to
do. As would being friendly to dynamically loaded C++ code. If you
create the framework,
(and we're talking the barest of scaffolding) then others can work to
show the cost/benefit.
I fail to see why this would be a controversial engineering approach.
James
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: james@mansionfamily.plus.com, craig_james@emolecules.com, bruce@momjian.us
Subject: Re: Multi-threading friendliness
In-Reply-To: <4766E4A5.40405@mansionfamily.plus.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox