Re: XML test error on Arch Linux

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Erik Wienhold <ewie(at)ewie(dot)name>
Cc: Frank Streitzig <fstreitzig(at)gmx(dot)net>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: XML test error on Arch Linux
Date: 2024-07-09 18:52:52
Message-ID: 1538696.1720551172@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Erik Wienhold <ewie(at)ewie(dot)name> writes:
> So how about just ignoring XML_ERR_NOT_WELL_BALANCED like in the
> attached?

Oh, that's a good idea. Given that we know they've changed the
behavior around this at least once, I'm not sure that it's safe
to unconditionally ignore this error --- but we could ignore it
as long as we've already recorded some libxml2 error.

I dug through the 2.13 sources and I think that in that version,
it is actually impossible to get XML_ERR_NOT_WELL_BALANCED without
any prior error. It's only issued if parsing stops short of the
end of input, and that only happens if PARSER_STOPPED() becomes
true, and that only happens if xmlHaltParser() is called, and
all the calls to that seem to follow other errors being issued.
But the 2.12 code looks quite different and I'm not sure that
there's no such code path there; much less that it can't happen
in older versions.

> This also adds test cases for an unclosed tag because I
> wanted to see if I can trigger just "chunk is not well balanced", but
> without success.

No particular objection to adding these.

> But I'm not sure if that's really necessary if we already have:
> <twoerrors>&idontexist;</unbalanced>
> The error messages are the same, except for the additional entity error.

I think the point of that test is different: it's showing that we
actually can report multiple errors out of a single libxml2 parsing
call. Before seeing your message I was thinking we'd have to
"\set VERBOSITY terse" that test, which was annoying me mightily
because it could no longer prove any such thing.

I've updated indri's host to current MacPorts including libxml2
2.13.1, and as expected it's now showing failures:

https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=indri&dt=2024-07-09%2018%3A17%3A23

I'll push this change in a little bit (still gotta write commit
message) and indri should go back to green. Unless one of the
other animals complains, I'll set about back-patching in a
day or two.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2024-07-09 18:58:23 Re: 回复: An implementation of multi-key sort
Previous Message Nathan Bossart 2024-07-09 18:50:56 Re: improve predefined roles documentation