Re: [PERFORM] Trigger is not firing immediately

2008-07-14 Thread A. Kretschmer
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


Re: [PERFORM] Trigger is not firing immediately

2008-07-14 Thread Chris
Praveen wrote:
  
 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 ?

Sending the same email over and over again isn't going to get you a
response any quicker.

If you send the details of the trigger and the tables/fields it affects
then you might get a more helpful response.

-- 
Postgresql  php tutorials
http://www.designmagick.com/

-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance


Re: [PERFORM] Trigger is not firing immediately

2008-07-14 Thread Praveen


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 [EMAIL PROTECTED]

To: pgsql-performance@postgresql.org
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









--
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance


Re: [PERFORM] Trigger is not firing immediately

2008-07-14 Thread Pavel Stehule
hello

Are you sure, so you don't call trigger recursion?

Regards
Pavel Stehule

2008/7/14 Praveen [EMAIL PROTECTED]:

 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
 [EMAIL PROTECTED]
 To: pgsql-performance@postgresql.org
 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







 --
 Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
 To make changes to your subscription:
 http://www.postgresql.org/mailpref/pgsql-performance


-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance


Re: [PERFORM] Trigger is not firing immediately

2008-07-14 Thread Praveen

Yes , I am sure it is not trigger recursion.
- Original Message - 
From: Pavel Stehule [EMAIL PROTECTED]

To: Praveen [EMAIL PROTECTED]
Cc: pgsql-performance@postgresql.org; [EMAIL PROTECTED]
Sent: Monday, July 14, 2008 3:03 PM
Subject: Re: [PERFORM] Trigger is not firing immediately



hello

Are you sure, so you don't call trigger recursion?

Regards
Pavel Stehule

2008/7/14 Praveen [EMAIL PROTECTED]:


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
[EMAIL PROTECTED]
To: pgsql-performance@postgresql.org
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









--
Sent via pgsql-performance mailing list 
(pgsql-performance@postgresql.org)

To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance







--
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance