Re: Millisecond-precision connect_timeout for libpq

From: ivan babrou <ibobrik(at)gmail(dot)com>
To: Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
Cc: Merlin Moncure <mmoncure(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Millisecond-precision connect_timeout for libpq
Date: 2013-07-10 07:54:29
Message-ID: CANWdNRCNWQ68XrXXmgC-4SbjL6PaXxrhq6wc2VbpM1pWpYJGcQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 9 July 2013 19:17, Dmitriy Igrishin <dmitigr(at)gmail(dot)com> wrote:
>
>
>
> 2013/7/9 Merlin Moncure <mmoncure(at)gmail(dot)com>
>>
>> On Fri, Jul 5, 2013 at 12:28 PM, ivan babrou <ibobrik(at)gmail(dot)com> wrote:
>> > Hi, guys! I made a quick patch to support floating number in
>> > connect_timeout param for libpq. This will treat floating number as
>> > seconds so this is backwards-compatible. I don't usually write in C,
>> > so there may be mistakes. Could you review it and give me some
>> > feedback?
>>
>> First thing that jumps into my head: why not use asynchronous
>> connection (PQconnectStart, etc) and code the timeout on top of that?
>
> +1.
>>
>>
>> merlin
>>
>>
>> --
>> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
>> To make changes to your subscription:
>> http://www.postgresql.org/mailpref/pgsql-hackers
>
>
>
>
> --
> // Dmitriy.
>

Doesn't look like straightforward solution for me. In my case existing
drivers will benefit from my patch, in async case they should be
rewritten. We don't use libpq directly, we use native pgsql module
from php.

Even with that, kernel can wait for milliseconds — why should we limit
precision 1000x times and reinvent milliseconds again in userspace?

--
Regards, Ian Babrou
http://bobrik.name http://twitter.com/ibobrik skype:i.babrou

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Jaskiewicz 2013-07-10 08:03:20 Listen/notify across clusters
Previous Message ivan babrou 2013-07-10 07:49:31 Re: Millisecond-precision connect_timeout for libpq