On 3/3/07, Bruce Momjian <bruce@momjian.us> wrote:
>
> I tried this patch bug found this regression failure:
>
> -- Considering only built-in procs (prolang = 12), look for multiple uses
> -- of the same internal function (ie, matching prosrc fields). It's OK to
> -- have several entries with different pronames for the same internal function,
> -- but conflicts in the number of arguments and other critical items should
> -- be complained of. (We don't check data types here; see next query.)
> -- Note: ignore aggregate functions here, since they all point to the same
> -- dummy built-in function.
> SELECT p1.oid, p1.proname, p2.oid, p2.proname
> FROM pg_proc AS p1, pg_proc AS p2
> WHERE p1.oid < p2.oid AND
> p1.prosrc = p2.prosrc AND
> p1.prolang = 12 AND p2.prolang = 12 AND
> (p1.proisagg = false OR p2.proisagg = false) AND
> (p1.prolang != p2.prolang OR
> p1.proisagg != p2.proisagg OR
> p1.prosecdef != p2.prosecdef OR
> p1.proisstrict != p2.proisstrict OR
> p1.proretset != p2.proretset OR
> p1.provolatile != p2.provolatile OR
> p1.pronargs != p2.pronargs);
> oid | proname | oid | proname
> ------+-------------+------+-------------
> 2931 | xpath_array | 2932 | xpath_array
> (1 row)
>
> This is because you are calling xpath_array with 2 and 3 arguments.
> Seems we don't do this anywhere else.
>
> I also had to add a #ifdef USE_LIBXML around xml_xmlnodetotext(). Please
> research a fix to this an resubmit. Thanks.
OK.
I'll fix these issues and extend the patch with resgression tests and
docs for xpath_array(). I'll resubmit it very soon.
--
Best regards,
Nikolay