Re: Dropping a broken function

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Joonas Makkonen" <joonas(dot)makkonen(at)infosto(dot)fi>
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: Dropping a broken function
Date: 2000-11-14 15:47:12
Message-ID: 2567.974216832@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

"Joonas Makkonen" <joonas(dot)makkonen(at)infosto(dot)fi> writes:
> 1) a type 'lo' was created
> 2) a function lo_oid(lo) was created
> 3) type 'lo' was dropped

Yeah, there's no interlock against that :-(

> Now the function cannot be dropped and the broken function is preventing
> dumping the db.

Find out the OID of the function, eg with

select oid,* from pg_proc where proname = 'lo_oid';

and then zap its pg_proc entry by OID:

delete from pg_proc where oid = whatever;

(Actually, any other unique WHERE condition will do, but OID is usually
the most reliable way, particularly for functions where there can be
multiple items with the same name.)

You'll need to be logged in as superuser to do this DELETE, of course.

regards, tom lane

In response to

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Peter Eisentraut 2000-11-14 16:54:49 Re: smallint to bigint
Previous Message Joonas Makkonen 2000-11-14 15:45:52 Re: Dropping a broken function