Robins wrote:
Hi,
The documentation says that function blocks with exceptions are far
costlier than without one.
I recommend against using exceptions. There is a memory leak in the
exception handler that will cause headaches if it is called many times
in the transaction.
In plpgsql, I would use:
SELECT ... FOR UPDATE;
IF FOUND THEN
UPDATE ...;
ELSE
INSERT ...;
END IF;
If you have multiple transactions doing this process at the same time,
you'll need explicit locking of the table to avoid a race condition.
--
Benjamin Minshall <[EMAIL PROTECTED]>
Senior Developer -- Intellicon, Inc.
http://www.intellicon.biz
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match