From: Tom Lane Date: Wed, 17 Oct 2018 19:06:38 +0000 (-0400) Subject: Fix minor bug in isolationtester. X-Git-Tag: REL_12_BETA1~1371 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9958b2b2a8cc25e8d791fc965fff3f0496163be6;p=postgresql Fix minor bug in isolationtester. If the lock wait query failed, isolationtester would report the PQerrorMessage from some other connection, meaning there would be no message or an unrelated one. This seems like a pretty unlikely occurrence, but if it did happen, this bug could make it really difficult/confusing to figure out what happened. That seems to justify patching all the way back. In passing, clean up another place where the "wrong" conn was used for an error report. That one's not actually buggy because it's a different alias for the same connection, but it's still confusing to the reader. --- diff --git a/src/test/isolation/isolationtester.c b/src/test/isolation/isolationtester.c index 4ecad038bd..62097ab961 100644 --- a/src/test/isolation/isolationtester.c +++ b/src/test/isolation/isolationtester.c @@ -594,7 +594,7 @@ run_permutation(TestSpec *testspec, int nsteps, Step **steps) if (!PQsendQuery(conn, step->sql)) { fprintf(stdout, "failed to send query for step %s: %s\n", - step->name, PQerrorMessage(conns[1 + step->session])); + step->name, PQerrorMessage(conn)); exit_nicely(); } @@ -743,7 +743,7 @@ try_complete_step(Step *step, int flags) PQntuples(res) != 1) { fprintf(stderr, "lock wait query failed: %s", - PQerrorMessage(conn)); + PQerrorMessage(conns[0])); exit_nicely(); } waiting = ((PQgetvalue(res, 0, 0))[0] == 't');