Hi,
On 2023-08-23 17:02:51 -0400, Tom Lane wrote:
> Daniel Gustafsson <daniel@yesql.se> writes:
> > On 23 Aug 2023, at 21:22, Andres Freund <andres@anarazel.de> wrote:
> >> I think there's more effective ways to make this cheaper. The basic thing
> >> would be to use libpq instead of forking of psql to make a connection
> >> check.
>
> > I had it in my head that not using libpq in pg_regress was a deliberate choice,
> > but I fail to find a reference to it in the archives.
>
> I have a vague feeling that you are right about that. Perhaps the
> concern was that under "make installcheck", pg_regress might be
> using a build-tree copy of libpq rather than the one from the
> system under test. As long as we're just trying to ping the server,
> that shouldn't matter too much I think
Or perhaps the opposite? That an installcheck pg_regress run might use the
system libpq, which doesn't have the symbols, or such?
Either way, with a function like PQping(), which existing in well beyond the
supported branches, that shouldn't be an issue?
> ... unless we hit problems with, say, a different default port number or
> socket path compiled into one copy vs. the other? That seems like it's
> probably a "so don't do that" case, though.
If we were to find such a case, it seems we could just add whatever missing
parameter to the connection string? I think we would likely already hit such
problems though, the psql started by an installcheck pg_regress might use the
system libpq, I think?
Greetings,
Andres Freund