[HACKERS] Vacuum from within a function crashes backend

2002-09-28 Thread Magnus Naeslund(f)

Hello, 

I did a vacuum from within a function, and it went sig11 on me.
Is it illegal to do that?

The function:

drop function xorder1_cleanup();
create function xorder1_cleanup() RETURNS integer AS '
declare
 x record;
 c integer;
begin
   c:=0;
   FOR x IN SELECT order_id,count(*) as cnt FROM xorder1_updates group by order_id LOOP
 if x.cnt  1 then
   c:=c+x.cnt;   
   delete from xorder1_updates where order_id = x.order_id;
   insert into xorder1_updates(order_id) values (x.order_id);
 end if;
   END LOOP;
   execute ''vacuum full analyse xorder1_updates;'';
   return c;
end;
' LANGUAGE 'plpgsql';


Magnus

-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 Programmer/Networker [|] Magnus Naeslund
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send unregister YourEmailAddressHere to [EMAIL PROTECTED])



Re: [HACKERS] Vacuum from within a function crashes backend

2002-09-28 Thread Alvaro Herrera

Magnus Naeslund(f) dijo: 

 Hello, 
 
 I did a vacuum from within a function, and it went sig11 on me.
 Is it illegal to do that?

Huh...  what version is this?  In current sources, VACUUM cannot be run
inside a function (it will throw an ERROR).  In 7.2[.1] I see there is
no protection against this.

Maybe the fix for this should be backported to 7.2 also.

-- 
Alvaro Herrera (alvherre[a]atentus.com)
Hay quien adquiere la mala costumbre de ser infeliz (M. A. Evans)



---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]



Re: [HACKERS] Vacuum from within a function crashes backend

2002-09-28 Thread Magnus Naeslund(f)

Alvaro Herrera [EMAIL PROTECTED] wrote:
 Magnus Naeslund(f) dijo:
 
 Hello,
 
 I did a vacuum from within a function, and it went sig11 on me.
 Is it illegal to do that?
 
 Huh...  what version is this?  In current sources, VACUUM cannot be
 run inside a function (it will throw an ERROR).  In 7.2[.1] I see
 there is no protection against this.
 
 Maybe the fix for this should be backported to 7.2 also.

Argh!
Sorry i forgot the version, it's as you say 7.2.1..
Then i'll just not do that :)

Magnus

-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 Programmer/Networker [|] Magnus Naeslund
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster