Re: [PATCH] lock_timeout and common SIGALRM framework

From: Boszormenyi Zoltan <zb(at)cybertec(dot)at>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Marc Cousin <cousinmarc(at)gmail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Hans-Juergen Schoenig <hs(at)cybertec(dot)at>, Ants Aasma <ants(at)cybertec(dot)at>, Robert Haas <robertmhaas(at)gmail(dot)com>
Subject: Re: [PATCH] lock_timeout and common SIGALRM framework
Date: 2012-07-13 13:30:59
Message-ID: 50002313.5000306@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

2012-07-11 21:47 keltezéssel, Tom Lane írta:
> Boszormenyi Zoltan <zb(at)cybertec(dot)at> writes:
>> Attached are the refreshed patches. InitializeTimeouts() can be called
>> twice and PGSemaphoreTimedLock() returns bool now. This saves
>> two calls to get_timeout_indicator().
> I'm starting to look at this patch now. There are a number of cosmetic
> things I don't care for, the biggest one being the placement of
> timeout.c under storage/lmgr/. That seems an entirely random place,
> since the functionality provided has got nothing to do with storage
> let alone locks. I'm inclined to think that utils/misc/ is about
> the best option in the existing backend directory hierarchy. Anybody
> object to that, or have a better idea?

Good idea, storage/lmgr/timeout.c was chosen simply because
it was born out of files living there.

> Another thing that needs some discussion is the handling of
> InitializeTimeouts. As designed, I think it's completely unsafe,
> the reason being that if a process using timeouts forks off another
> one, the child will inherit the parent's timeout reasons and be unable
> to reset them. Right now this might not be such a big problem because
> the postmaster doesn't need any timeouts, but what if it does in the
> future? So I think we should drop the base_timeouts_initialized
> "protection", and that means we need a pretty consistent scheme for
> where to call InitializeTimeouts. But we already have the same issue
> with respect to on_proc_exit callbacks, so we can just add
> InitializeTimeouts calls in the same places as on_exit_reset().
>
> Comments?
>
> I'll work up a revised patch and post it.
>
> regards, tom lane
>

--
----------------------------------
Zoltán Böszörményi
Cybertec Schönig & Schönig GmbH
Gröhrmühlgasse 26
A-2700 Wiener Neustadt, Austria
Web: http://www.postgresql-support.de
http://www.postgresql.at/

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2012-07-13 13:33:02 Re: Regarding installation of FDW on Windows
Previous Message Atri Sharma 2012-07-13 13:12:57 Re: Regarding installation of FDW on Windows