Re: query_to_xml() returns invalid XML when query returns no rows

From: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
To: Thomas Kellerer <spam_eater(at)gmx(dot)net>, pgsql-general(at)postgresql(dot)org
Subject: Re: query_to_xml() returns invalid XML when query returns no rows
Date: 2018-03-12 22:31:07
Message-ID: fb97da86-2397-4ccb-38a4-38153de31df0@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 3/12/18 08:18, Thomas Kellerer wrote:
> I am not sure if this qualifies as a bug:
>
> query_to_xml() returns an empty XML document when the query returns no rows, e.g:
>
> select query_to_xml('select 42 where false', false, true, '');
>
> The problem with this is, that if the resulting XML is then fed into e.g. the xpath() function, that function fails because the "empty" document is an invalid XML:

That's because you have the tableforest argument set to true. If you
want a proper XML document, then you should write

select query_to_xml('select 42 where false', false, false, '');

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2018-03-12 22:55:39 Re: Reindex doesn't eliminate bloat
Previous Message Ron Johnson 2018-03-12 22:28:19 Re: Reindex doesn't eliminate bloat