Re: problem calling psql multiple times from a script ?

From: Ron Johnson <ron(dot)l(dot)johnson(at)cox(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: problem calling psql multiple times from a script ?
Date: 2007-05-30 15:52:04
Message-ID: 465D9DA4.6090104@cox.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 05/30/07 10:23, Tom Lane wrote:
> Paul Tilles <Paul(dot)Tilles(at)noaa(dot)gov> writes:
>> I am wondering if one of the previous executions of psql is doing some
>> "back room" work in the database while allowing the script to continue.
>
> It takes finite time for the backend to quit, and psql doesn't wait
> around for that to happen. I've noticed that on many systems it seems
> that the kernel scheduler actively discriminates against an exiting
> backend --- maybe it thinks it's a low-priority background process?
> The amount of work needed to start a new psql and a new backend
> vastly exceeds what it takes to quit (unless you've got lots of temp
> tables to drop, or some such), and yet people report cases like this
> pretty often.
>
> We could fix it by making PQfinish() wait for the connection to drop,
> but that cure could be worse than the disease; most apps would just
> see this as useless delay.
>
> In the meantime, a sleep(1) or some such before trying to drop a
> recently-used database ought to be a usable workaround.

The proprietary DB that I use at work implemented something similar
as a command-line qualifier, and I guarantee you that it's been
tremendously useful.

--
Ron Johnson, Jr.
Jefferson LA USA

Give a man a fish, and he eats for a day.
Hit him with a fish, and he goes away for good!

In response to

Browse pgsql-general by date

  From Date Subject
Next Message novnov 2007-05-30 15:53:10 Re: function retuning refcursor, order by ignored?
Previous Message Andrew Sullivan 2007-05-30 15:49:12 Re: 8.3