Re: Issues with ON CONFLICT UPDATE and REINDEX CONCURRENTLY - Mailing list pgsql-hackers

From Mihail Nikalayeu
Subject Re: Issues with ON CONFLICT UPDATE and REINDEX CONCURRENTLY
Date
Msg-id CADzfLwWOVyJygX6BFuyuhTKkJ7uw2e8OcVCDnf6iqnOFhMPE+A@mail.gmail.com
Whole thread Raw
In response to Re: Issues with ON CONFLICT UPDATE and REINDEX CONCURRENTLY  (Álvaro Herrera <alvherre@kurilemu.de>)
Responses Re: Issues with ON CONFLICT UPDATE and REINDEX CONCURRENTLY
List pgsql-hackers
Hello, Álvaro!

Thanks for looking into this and pushing.

> Hmm, it timed out in prion, which runs this "special tricks" code.
> (I did change the hardcoded timeouts you had to the TAP framework one

I think you misunderstood the wait_for_idle role. Its role is to
understand if we are stuck in an injection point during the execution
of commands. If timeout set for a TAP framework timeout and we stuck -
we will wait until test framework will be terminate us due to timeout.
So, "special trick" is not working with such timeout. It should be
relatively small.

The same also for wait_for_injection_point - timeout should be less
then TAP timeout to have some time to output debug information.

But I agree - hardcoded timeouts looks weird.

> I'm not sure what the implications are about marking this no longer used
> in installcheck.  I think it means some buildfarm animals may no longer
> run it, if they're configured to only do installcheck.  It's a bit of a
> bummer because potential loss of runs for the other files in this test
> module.  Still, I'm not crying about it.

Do you know any way to detect if we are running installcheck in the
test? Or we may add some (env variable like
'enable_injection_points')?
I that case we may skip just the single test without any regression here.

I'll try to prepare next set of fixes today/tomorrow:

* In wait_for_idle exit early if we see backend stuck into injection
point (no sense to wait more, my bad - should be added from the
start), also reduce timeout to 1/2 of TAP
* In wait_for_injection_point use 1/2 of TAP timeout.
* Try to detect install_check in tests and skip instead of whole pack
* Change year to 2026 :)

Best regards,
Mikhail.



pgsql-hackers by date:

Previous
From: Jelte Fennema-Nio
Date:
Subject: Re: Proposal to allow setting cursor options on Portals
Next
From: Peter Eisentraut
Date:
Subject: Re: more POSIX 2008 cleanup: strnlen(), rindex()