Tom,
On 2012-02-02 02:52, Tom Lane wrote:
> Merlin Moncure <mmoncure@gmail.com> writes:
>> On Wed, Feb 1, 2012 at 8:52 AM, Chris Travers
>> <chris.travers@gmail.com> wrote:
>>> ext_test=# CREATE EXTENSION tablefunc;
>>> ERROR: type "tablefunc_crosstab_2" already exists
>>>
>>> This lead me to conclude that we needed to CREATE EXTENSION FROM
>>> UNPACKAGED
>>> thinking this might be an upgrade issue. However no luck.
>>>
>>> ext_test=# CREATE EXTENSION tablefunc FROM unpackaged;
>>> ERROR: function normal_rand(integer, double precision, double
>>> precision) does not exist
>
>> by any chance did you create the extension in the template1
>> database?
>
> The whole extension is not in template1, else "CREATE FROM
> unpackaged"
> would have worked. But evidently there are at least some conflicting
> objects there. I speculate that somebody installed a pre-9.1 version
> of
> the extension in template1, realized their mistake, and then tried to
> clean it out manually (piecemeal) instead of using the uninstall
> script.
> And missed some things.
>
> Anyway the solution is to connect to template1 and drop any cruft
> that's
> lying around in it.
I am the user who has the situation - the background is:
- the previous installation on Fedora 14 x86_64 was PostgreSQL 8.x
- there were old (unused) versions of LedgerSMB
- during the move from Fedora 14 to Fedora 16 (x86_64), the data was
dumped out of PG 8.x and restored to PG 9.1P
I haven't done any manual messing around with template1 as far as I
know . .
Regards,
Phil.
--
Philip Rhoades
GPO Box 3411
Sydney NSW 2001
Australia
E-mail: phil@pricom.com.au