Re: gettimeofday cause crash on Windows

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Asif Naeem <anaeem(dot)it(at)gmail(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 17:53:05
Message-ID: 20150212175305.GD9449@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

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

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message vivek.singh 2015-02-12 19:34:20 BUG #12765: Postgresql ROLE dropped, but its not dropped from pg_roles
Previous Message Tom Lane 2015-02-12 17:42:44 Re: gettimeofday cause crash on Windows