From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Rhys A(dot)D(dot) Stewart" <rhys(dot)stewart(at)gmail(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: user defined XML aggregate not working as (i think) it should |
Date: | 2012-10-04 01:58:17 |
Message-ID: | 12551.1349315897@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Rhys A.D. Stewart" <rhys(dot)stewart(at)gmail(dot)com> writes:
> I have an xml aggregate function that always returns 'ERROR: invalid
> XML content'. However an identical function that uses text produces
> valid xml with the same inputs.
I believe the reason this doesn't work is that the aggregate's initial
value is faulty: it's supposed to be an XML value and it isn't.
regression=# select ''::xml;
ERROR: invalid XML content
LINE 1: select ''::xml;
^
It's unfortunate that the CREATE AGGREGATE command doesn't complain
about that --- maybe we could improve it.
As far as making a working aggregate goes, I'd try leaving off the
initcond clause (so that the initial value is NULL) and then marking
the transition function STRICT. (plays around with xmlconcat on
nulls ...) hm, maybe you'd not even need the STRICT marking, though
personally I'd suggest it.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Chris Travers | 2012-10-04 02:08:01 | Re: Fwd: pros and cons of two security models |
Previous Message | Stephen Frost | 2012-10-04 01:25:55 | Re: Fwd: pros and cons of two security models |