From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | David Kerr <dmk(at)mr-paradox(dot)net> |
Cc: | Merlin Moncure <mmoncure(at)gmail(dot)com>, Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: killing processes |
Date: | 2009-07-21 03:14:22 |
Message-ID: | 4093.1248146062@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
David Kerr <dmk(at)mr-paradox(dot)net> writes:
> But, i don't see any coded loop or way for me to insert a signal check. (I'm not much of a
> programmer) the function was just:
> CREATE OR REPLACE FUNCTION array_median(anyarray)
> RETURNS anyelement AS
> $$
> SELECT CASE
> WHEN array_upper($1,1) = 0 THEN null
> WHEN mod(array_upper($1,1),2) = 1 THEN
> asorted[ceiling(array_upper(asorted,1)/2.0)]
> ELSE
> ((asorted[ceiling(array_upper(asorted,1)/2.0)] + asorted[ceiling(array_upper(asorted,1)/2.0)+1])/2.0) END
> FROM (SELECT ARRAY(SELECT ($1)[n] FROM
> generate_series(1, array_upper($1, 1)) AS n
> WHERE ($1)[n] IS NOT NULL
> ORDER BY ($1)[n]
> ) As asorted) As foo ;
> $$
> LANGUAGE 'sql' IMMUTABLE;
Huh. How big an array were you trying to invoke it on?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | tanjunhua | 2009-07-21 04:53:23 | Re: memory leak occur when disconnect database |
Previous Message | Ries van Twisk | 2009-07-21 02:45:04 | Re: commercial adaptation of postgres |