Re: [GENERAL] Checking if Aggregate exists

2008-03-25 Thread Shane Ambler
Erik Jones wrote: On Mar 24, 2008, at 2:18 PM, Josh Trutwin wrote: On Mon, 24 Mar 2008 14:02:02 -0500 Erik Jones <[EMAIL PROTECTED]> wrote: On Mar 24, 2008, at 1:09 PM, Martijn van Oosterhout wrote: On Mon, Mar 24, 2008 at 12:47:43PM -0500, Josh Trutwin wrote: My code to check if an aggreg

Re: [GENERAL] Checking if Aggregate exists

2008-03-24 Thread Erik Jones
On Mar 24, 2008, at 2:18 PM, Josh Trutwin wrote: On Mon, 24 Mar 2008 14:02:02 -0500 Erik Jones <[EMAIL PROTECTED]> wrote: On Mar 24, 2008, at 1:09 PM, Martijn van Oosterhout wrote: On Mon, Mar 24, 2008 at 12:47:43PM -0500, Josh Trutwin wrote: My code to check if an aggregate exists runs thi

Re: [GENERAL] Checking if Aggregate exists

2008-03-24 Thread Josh Trutwin
On Mon, 24 Mar 2008 14:02:02 -0500 Erik Jones <[EMAIL PROTECTED]> wrote: > > On Mar 24, 2008, at 1:09 PM, Martijn van Oosterhout wrote: > > On Mon, Mar 24, 2008 at 12:47:43PM -0500, Josh Trutwin wrote: > >> My code to check if an aggregate exists runs this query: > >> > >> SELECT * FROM pg_catalo

Re: [GENERAL] Checking if Aggregate exists

2008-03-24 Thread Erik Jones
On Mar 24, 2008, at 1:09 PM, Martijn van Oosterhout wrote: On Mon, Mar 24, 2008 at 12:47:43PM -0500, Josh Trutwin wrote: My code to check if an aggregate exists runs this query: SELECT * FROM pg_catalog.pg_aggretate WHERE aggfnoid = 'foo'::REGPROC; Seems to me you'd rather want the proisag

Re: [GENERAL] Checking if Aggregate exists

2008-03-24 Thread Alvaro Herrera
Josh Trutwin wrote: > Is there a better way to do this? Maybe a stored proc that eats the > error message? Well, you can use a plpgsql function with a BEGIN/EXCEPTION/END block to "eat" the error message. However I'm wondering whether you should be checking the aggregate argument type(s) as wel

Re: [GENERAL] Checking if Aggregate exists

2008-03-24 Thread Martijn van Oosterhout
On Mon, Mar 24, 2008 at 12:47:43PM -0500, Josh Trutwin wrote: > My code to check if an aggregate exists runs this query: > > SELECT * FROM pg_catalog.pg_aggretate WHERE aggfnoid = 'foo'::REGPROC; Seems to me you'd rather want the proisagg column in pg_proc and forget about pg_aggregate altogether