Received: from localhost (unknown [200.46.204.183]) by postgresql.org (Postfix) with ESMTP id 22A21650084 for ; Mon, 14 Jul 2008 04:13:30 -0300 (ADT) Received: from postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 54557-08 for ; Mon, 14 Jul 2008 04:13:24 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from renaissance-it.com (unknown [164.164.87.55]) by postgresql.org (Postfix) with ESMTP id 459BA650054 for ; Mon, 14 Jul 2008 04:13:24 -0300 (ADT) Received: (qmail 16162 invoked by uid 109); 14 Jul 2008 07:13:13 -0000 Received: from 192.168.1.6 by sritmail (envelope-from , uid 112) with qmail-scanner-1.25st (perlscan: 1.25st. Clear:RC:1(192.168.1.6):. Processed in 0.009832 secs); 14 Jul 2008 07:13:13 -0000 Received: from unknown (HELO praveenkm) (praveen.k@[192.168.1.6]) (envelope-sender ) by renaissance-it.com (qmail-ldap-1.03) with SMTP for ; 14 Jul 2008 07:13:13 -0000 Message-ID: <010901c8e581$a2b85370$274610ac@praveenkm> From: "Praveen" To: Cc: Subject: Re: Trigger is not firing immediately Date: Mon, 14 Jul 2008 12:47:12 +0530 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0.904 tagged_above=0 required=5 tests=AWL=-1.393, FAKE_REPLY_C=2.197, RDNS_NONE=0.1 X-Spam-Level: X-Archive-Number: 200807/124 X-Sequence-Number: 30724 Hi all, Please find the procedure and trigger which took more time when we try to update value in table through Procedure. CREATE OR REPLACE FUNCTION procname1(args) RETURNS void AS $BODY$ DECLARE { --- Some code blocks --- } BEGIN --> to here it is executing fastly after reaches this statement it's taking time update table1 set col1 = val1 where pk = val2 and col2 = val3; -----> HERE table1 IS HAVING THE TRIGGER I GIVEN BELOW THE TRIGGER( trigger1) exception WHEN OTHERS THEN raise notice '''EXCEPTION IN procname1 BLOCK 3 : %''',SQLERRM; NULL; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE; ALTER FUNCTION procname1(args); CREATE OR REPLACE FUNCTION trigger1() RETURNS "trigger" AS $BODY$ BEGIN IF (TG_OP='UPDATE') THEN IF( some condition ) THEN BEGIN INSERT INTO table2(cols) VALUES(values); IF NOT FOUND THEN NULL; END IF; EXCEPTION WHEN OTHERS THEN NULL; END; END IF; END IF; RETURN NULL; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE; ALTER FUNCTION trigger1(); > ----- Original Message ----- > From: "A. Kretschmer" > To: > Sent: Monday, July 14, 2008 12:18 PM > Subject: Re: [PERFORM] Trigger is not firing immediately > > >> am Mon, dem 14.07.2008, um 12:04:49 +0530 mailte Praveen folgendes: >>> >>> Hi All, >>> I am having a trigger in table, If I update the the table manually >>> trigger >>> is firing immediately(say 200ms per row), But if I update the table >>> through >>> procedure the trigger is taking time to fire(say 7 to 10 seconds per >>> row). >>> >>> Please tell me what kind of changes can I make so that trigger fire >>> immediately while updating the table through procedure ? >> >> Show us more details like source-code of the procedure, the trigger and >> a demonstration. >> >> >> Andreas >> -- >> Andreas Kretschmer >> Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header) >> GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net >> >> -- >> Sent via pgsql-performance mailing list >> (pgsql-performance@postgresql.org) >> To make changes to your subscription: >> http://www.postgresql.org/mailpref/pgsql-performance >> > > >