Re: gettimeofday cause crash on Windows

From: Asif Naeem <anaeem(dot)it(at)gmail(dot)com>
To: Andres Freund <andres(at)2ndquadrant(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: gettimeofday cause crash on Windows
Date: 2015-02-12 19:41:46
Message-ID: CAEB4t-Pv46Mvx9FxjYw8CumdUFFbuqn1BAJfjc7RHudfNn-nJw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Superb idea. PFA patch. Please do let me know if I missed something. Thanks.

On Thu, Feb 12, 2015 at 10:53 PM, Andres Freund <andres(at)2ndquadrant(dot)com>
wrote:

> On 2015-02-12 12:14:03 -0300, Alvaro Herrera wrote:
> > Asif Naeem wrote:
> > > Don’t you feel gettimeofday() implementation is incomplete in current
> > > state, Is there any other example of function port in PG that could
> lead to
> > > crash if its related init_* function is not called earlier ?. As
> mentioned
> > > by Michael, it seems not enough documented (release notes etc), at
> least it
> > > need to give warning etc instead of simply crash the related process.
> > > GetSystemTimeAsFileTime() function is less precise but it is quite
> fast and
> > > less CPU intensive then GetSystemTimePreciseAsFileTime() function,
> > > GetSystemTimePreciseAsFileTime() can effect performance of an
> application.
> > > With the proposed patch, gettimeofday() function is more safe and more
> > > versatile, a contrib may use it as per its need of precision. Thanks.
> >
> > Ideally we would the Precise dance automatically, without requiring the
> > program to call an initialization function. Otherwise, programs may
> > never be updated to use Precise rather than the stock function. I guess
> > this is the reason Andres prefers a crash: to force programs to be
> > updated to include the initialization step.
> >
> > I wonder if it would work to set the function initially to the
> > initialization function, so that on the first call the Precise version,
> > if it exists, is detected (or the stock version otherwise) and set as
> > the function to call for later -- without requiring a jump in every
> > subsequent execution of gettimeofday(), of course. The initialization
> > function itself would have to return the value returned by
> > GetSystemTimePreciseAsFileTime, of course.
>
> Yes, that sounds like a good idea.
>
> Greetings,
>
> Andres Freund
>
> --
> Andres Freund http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Training & Services
>

Attachment Content-Type Size
gettimeofday_win32_v2.patch application/octet-stream 2.3 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message David G Johnston 2015-02-12 20:16:14 Re: BUG #12765: Postgresql ROLE dropped, but its not dropped from pg_roles
Previous Message vivek.singh 2015-02-12 19:34:20 BUG #12765: Postgresql ROLE dropped, but its not dropped from pg_roles