Обсуждение: thats funny :)
hi all i created a function that restarts the server, i will show you what i am doing drop trigger lala_trig on favorites; drop function fav_funct() cascade; create or replace function fav_funct() returns trigger AS ' declare old_id int default 0; new_id int default 0; rec record; rec2 record; rec3 record; BEGIN select into rec max(id) as max_id from favorites ; IF rec.max_id IS NULL THEN new_id :=1; ELSE new_id = rec.max_id; END IF; select into rec2 max(id) as cnt from favorites where id = (select max(id) from favorites); select into rec3 count(*) as call_cat from call_cat ; IF rec2.cnt < rec3.call_cat THEN new_id := rec.max_id; ELSE new_id := rec.max_id +1; END IF; insert into favorites (id) values (new_id); RETURN NEW; END; ' LANGUAGE 'plpgsql'; create trigger lala_trig before insert on favorites for each row execute procedure fav_funct(); insert into favorites (call_cat_id,details) values (1,'1'); --------------------------- NOTE --------------------------- I know this function sux but i am currently developing :) ---------------------------------------------------------------- test=# insert into favorites (call_cat_id,details) values (1,'1'); server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. The connection to the server was lost. Attempting reset: Failed. !> \q postgres@statistics:~$ psql -l psql: FATAL: the database system is starting up --------- AFTER A WHILE --------- postgres@statistics:~$ psql -l List of databases Name | Owner | Encoding -----------------+----------+------------ my_tests | postgres | ISO_8859_7 template0 | postgres | ISO_8859_7 template1 | postgres | ISO_8859_7 test | postgres | ISO_8859_7 ps the psql version is: postgres@statistics:~$ psql -V psql (PostgreSQL) 7.4
[Please use a descriptive subject -- "thats funny :)" conveys no information about the problem, and it resembles subjects seen on some viruses.] On Mon, May 09, 2005 at 02:06:46PM +0300, Vasilis Ventirozos wrote: > > hi all i created a function that restarts the server, i will show you > what i am doing The trigger function you posted is called whenever you insert a record into the favorites table, then the function inserts a record into favorites, which calls the trigger, which inserts a record, which calls the trigger, etc. Infinite recursion. -- Michael Fuhr http://www.fuhr.org/~mfuhr/
i know what the trigger does, i writed it :) i dont have a problem , i already fixed the function to work nice and smooth i just sent it for fun, anyway no problem about the subject >[Please use a descriptive subject -- "thats funny :)" conveys no >information about the problem, and it resembles subjects seen on >some viruses.] > >On Mon, May 09, 2005 at 02:06:46PM +0300, Vasilis Ventirozos wrote: > > >>hi all i created a function that restarts the server, i will show you >>what i am doing >> >> > >The trigger function you posted is called whenever you insert a >record into the favorites table, then the function inserts a record >into favorites, which calls the trigger, which inserts a record, >which calls the trigger, etc. Infinite recursion. > > >
* Vasilis Ventirozos <vendi@cosmoline.com> wrote: > i know what the trigger does, i writed it :) > i dont have a problem , i already fixed the function to work nice and smooth > i just sent it for fun, anyway no problem about the subject probably there should be a detection of too deep recursion instead of just crashing on stack overflow. cu -- --------------------------------------------------------------------- Enrico Weigelt == metux IT service phone: +49 36207 519931 www: http://www.metux.de/ fax: +49 36207 519932 email: contact@metux.de --------------------------------------------------------------------- Realtime Forex/Stock Exchange trading powered by postgresSQL :)) http://www.fxignal.net/ ---------------------------------------------------------------------
Enrico Weigelt <weigelt@metux.de> writes: > * Vasilis Ventirozos <vendi@cosmoline.com> wrote: >> i know what the trigger does, i writed it :) >> i dont have a problem , i already fixed the function to work nice and smooth >> i just sent it for fun, anyway no problem about the subject > probably there should be a detection of too deep recursion instead > of just crashing on stack overflow. Already done in PG 8.0 ... regards, tom lane
I have some clients that are looking to upgrade to MSSQL Server because they use ACT!. I'm developing a web application for them that uses PostgreSQL. Does anyone know if ACT! can use PostgreSQL? or if I can hack it? Suggestion welcome and Thanks, J