Re: [PATCH] contrib/xml2: xslt_process() should report XSLT-related error details

Robin Haberkorn <haberkorn@b1-systems.de>

From: "Robin Haberkorn" <haberkorn@b1-systems.de>
To: "Tom Lane" <tgl@sss.pgh.pa.us>
Cc: <pgsql-hackers@postgresql.org>
Date: 2025-04-24T09:50:04Z
Lists: pgsql-hackers
On Thu Apr 24, 2025 at 01:59:10 GMT +03, Tom Lane wrote:
> Hm.  I wonder if we couldn't get rid of the
> HAVE_XMLSTRUCTUREDERRORCONTEXT conditionalization.  If the
> libxml2 versions that lacked that were "old" in 2011, surely
> they are extinct in the wild by now.  I'm thinking that we
> really don't want to be using the generic handler at all, given
> the commit log's comment that it can't distinguish between
> error, warning, and notice cases.

libxml 2.7.4 was released 15 years ago, so yes these #ifdefs can
probably be removed already. What's the oldest distribution/OS you
want to support PG on?
Even Ubuntu 14.04 from 2014 already had libxml 2.9.1.

If you like, I will prepare another patch to remove
HAVE_XMLSTRUCTUREDERRORCONTEXT in a separate thread.

PS: I added the libxslt error handling patch to the next commitfest:
https://commitfest.postgresql.org/patch/5718/

-- 
Robin Haberkorn
Senior Software Engineer

B1 Systems GmbH
Osterfeldstraße 7 / 85088 Vohburg / https://www.b1-systems.de
GF: Ralph Dehner / Unternehmenssitz: Vohburg / AG: Ingolstadt, HRB 3537



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix up misuse of "volatile" in contrib/xml2.

  2. xml2: Improve error handling of libxml2 calls

  3. Rewrite libxml error handling to be more robust.