From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: pg_proc.probin should become text? |
Date: | 2009-08-04 02:30:26 |
Message-ID: | 603c8f070908031930s2f0ab366s1d0196bfb4215d0a@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Aug 3, 2009 at 10:03 PM, Tom Lane<tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> pg_proc.probin is currently declared as being type bytea. Perhaps that
> had some real utility once upon a time, but no currently defined
> procedural language stores binary data there. In fact, the only
> thing that gets stored there is the shared-library file name for
> C functions. To make things even more fun, none of the code touching
> probin is doing anything to honor the special escaping conventions for
> bytea. This was pretty broken already, and might perhaps explain some
> of the weirder error reports we've gotten. It is now obvious to me
> that no shlib file name containing non-ASCII characters will correctly
> survive a dump/reload, in any existing PG release. Backslashes
> accidentally fail to fail, at least for some values of
> standard_conforming_strings.
>
> However, with the hex bytea output patch in place, it's *completely*
> broken. I offer the following pg_dump output:
>
> CREATE FUNCTION interpt_pp(path, path) RETURNS point
> LANGUAGE c
> AS '\\x2f686f6d652f706f7374677265732f706773716c2f7372632f746573742f726567726573732f726567726573732e736c', 'interpt_pp';
>
> which should of course have looked like this:
>
> CREATE FUNCTION interpt_pp(path, path) RETURNS point
> LANGUAGE c
> AS '/home/postgres/testversion/src/test/regress/regress.sl', 'interpt_pp';
>
> I think that the least painful solution might be to change
> pg_proc.probin to be declared as text. Otherwise we're going to need
> version-specific klugery in pg_dump and who knows where else.
>
> Comments?
Will that require a special hack in pg_migrator?
...Robert
From | Date | Subject | |
---|---|---|---|
Next Message | Joe Conway | 2009-08-04 02:33:39 | Re: async notification patch for dblink |
Previous Message | Tom Lane | 2009-08-04 02:30:16 | Re: async notification patch for dblink |