Commit f87712d2 authored by Bruce Momjian's avatar Bruce Momjian

Document that plpgsql upsert example can fail if insert triggers return

unique exception, or if not used in read committed transaction mode.
parent 732808c0
......@@ -2464,7 +2464,7 @@ BEGIN
INSERT INTO db(a,b) VALUES (key, data);
RETURN;
EXCEPTION WHEN unique_violation THEN
-- do nothing, and loop to try the UPDATE again
-- Do nothing, and loop to try the UPDATE again.
END;
END LOOP;
END;
......@@ -2474,7 +2474,10 @@ LANGUAGE plpgsql;
SELECT merge_db(1, 'david');
SELECT merge_db(1, 'dennis');
</programlisting>
This example assumes the <literal>unique_violation</> error is caused by
the <command>INSERT</>, and not by an <command>INSERT</> trigger function
on the table. Also, this example only works in the default Read
Committed transaction mode.
</para>
</example>
</sect2>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment