El día 14 de abril de 2009 15:46, Alvaro Herrera
<[email protected]> escribió:
>
> create or replace function pg_terminate_backend(int) returns int
> language plperlu as $$
> $pid = shift;
> $ret = kill TERM, $pid;
> elog WARNING, "could not send signal TERM to $pid: $!" unless $ret ==
> 1;
> return $ret;
> $$;
>
Vos sabes que hice esta función y no mata la sesión...
la única diferencia es que la hice así:
CREATE OR REPLACE FUNCTION matarSesion(integer) RETURNS text LANGUAGE plperlu
SECURITY DEFINER VOLATILE AS
$PLPERL$
$str = 'kill -TERM '.$_[0];
$cmd = `$str`;
return $cmd::text;
$PLPERL$ ;
Sin embargo desde Shell la porción de código funciona, creo que
es una cuestión de permisos, no?
De todas maneras lo que se me ocurre que se puede crear el script y
llamarlo con la función system.
--
Emanuel Calvo Franco
Sumate al ARPUG !
(www.postgres-arg.org -
www.arpug.com.ar)
ArPUG / AOSUG Member
Postgresql Support & Admin
--
TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo
agradecerán