EndCompressorZstd() neglected to free everything. This was
most visible with a lot of large objects in the dump.
Per report from Tomasz Szypowski. Back-patch to v16
where this code came in.
Discussion: https://postgr.es/m/DU0PR04MB94193D038A128EF989F922D199042@DU0PR04MB9419.eurprd04.prod.outlook.com
Assert(zstdcs->dstream == NULL);
_ZstdWriteCommon(AH, cs, true);
ZSTD_freeCStream(zstdcs->cstream);
- pg_free(zstdcs->output.dst);
}
+ /* output buffer may be allocated in either mode */
+ pg_free(zstdcs->output.dst);
pg_free(zstdcs);
}