Suppress "chunk is not well balanced" errors from libxml2.
authorTom Lane <[email protected]>
Tue, 9 Jul 2024 19:01:05 +0000 (15:01 -0400)
committerTom Lane <[email protected]>
Tue, 9 Jul 2024 19:01:13 +0000 (15:01 -0400)
commite7192486dded0ca82824fef95eb88b4231bdd4d2
treee511510de3b29bfe1b32b28377bb86f599f9239a
parentccd38024bc3c61e62af2097d408a670661713e68
Suppress "chunk is not well balanced" errors from libxml2.

libxml2 2.13 has an entirely different rule than earlier versions
about when to emit "chunk is not well balanced" errors.  This
causes regression test output discrepancies for three test cases
that formerly provoked that error (along with others) and now don't.

Closer inspection shows that at least in 2.13, this error is pretty
useless because it can only be emitted after some other more-relevant
error.  So let's get rid of the cross-version discrepancy by just
suppressing it.  In case some older libxml2 version is capable of
emitting this error by itself, suppress only when some other error
has already been captured.

Like 066e8ac6e and 6082b3d5d, this will need to be back-patched,
but let's check the results in HEAD first.  (The patch for xml_2.out,
in particular, is blind since I can't test it here.)

Erik Wienhold and Tom Lane, per report from Frank Streitzig.

Discussion: https://postgr.es/m/trinity-b0161630-d230-4598-9ebc-7a23acdb37cb-1720186432160@3c-app-gmx-bap25
Discussion: https://postgr.es/m/trinity-361ba18b-541a-4fe7-bc63-655ae3a7d599-1720259822452@3c-app-gmx-bs01
src/backend/utils/adt/xml.c
src/test/regress/expected/xml.out
src/test/regress/expected/xml_1.out
src/test/regress/expected/xml_2.out
src/test/regress/sql/xml.sql