Hi, On 2022-01-08 19:32:36 +0100, Fabien COELHO wrote: > Attached v13 where the crash test is moved to tap.
The reason this test constantly fails on cfbot windows is a use-after-free bug. I figured that out in the context of another thread, so the debugging is there: https://postgr.es/m/20220113054123.ib4khtafgq34lv4z%40alap3.anarazel.de > Ah, I see the bug. It's a use-after-free introduced in the patch: > > SendQueryAndProcessResults(const char *query, double *pelapsed_msec, > bool is_watch, const printQueryOpt *opt, FILE *printQueryFout, bool > *tx_ended) > > > ... > /* first result */ > result = PQgetResult(pset.db); > > > while (result != NULL) > > > ... > if (!AcceptResult(result, false)) > { > ... > ClearOrSaveResult(result); > success = false; > > > /* and switch to next result */ > result_status = PQresultStatus(result); > if (result_status == PGRES_COPY_BOTH || > result_status == PGRES_COPY_OUT || > result_status == PGRES_COPY_IN) > > > So we called ClearOrSaveResult() with did a PQclear(), and then we go and call > PQresultStatus(). Greetings, Andres Freund