Re: Weird failure in explain.out with OpenBSD

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Postgres hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Weird failure in explain.out with OpenBSD
Date: 2021-11-10 21:23:06
Message-ID: CA+hUKGKQ6YVmT68x3862vr=kN3dvjtxGW_icBL0c-R5iaMkkMQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Dec 30, 2020 at 8:17 PM Michael Paquier <michael(at)paquier(dot)xyz> wrote:
> On Tue, Dec 29, 2020 at 04:16:06PM -0500, Tom Lane wrote:
> > Hmph, no, a look at explain.c shows that the "Execution Time" is just
> > based on the difference of INSTR_TIME_SET_CURRENT measurements taken
> > within the current process. It's difficult to conclude anything except
> > that the clock went backwards. Which is weird, because according to [1]
> > that system does have clock_gettime(CLOCK_MONOTONIC), which'd be our
> > preferred choice of INSTR_TIME time base; and such clocks are not
> > supposed to go backwards ever.
>
> I was looking at that, and I agree that this looks like a monotonic
> clock going backwards. Or could it be possible that it gave 0.0 as
> result, still a minus sign was appended? That would mean an execution
> that took less than 1us per the system clock.

If I'm reading this right, it might be further evidence of
CLOCK_MONOTONIC going backwards on OpenBSD, this time by quite a lot
(the regular expression doesn't tolerate a leading minus sign, so the
test failed):

https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=morepork&dt=2021-11-10%2020%3A51%3A32

# Log entry not matching: 1 22 -124769 0 1636578000 152817

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Shay Rojansky 2021-11-10 22:25:51 Re: Should AT TIME ZONE be volatile?
Previous Message Tom Lane 2021-11-10 21:06:46 Re: [EXTERNAL] Re: PQcancel does not use tcp_user_timeout, connect_timeout and keepalive settings