Basic locking question

From: Ben <bench(at)silentmedia(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Basic locking question
Date: 2005-09-06 21:17:59
Message-ID: 431E0787.7070907@silentmedia.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I'm not very familiar with explicitly locking things in SQL, so this may
be a dumb question, but.....

I've got a stored proc that takes a text key and returns an ID. If the
key isn't in a lookup table, it adds it and will return the
auto-generated serial number. If it's already there, it simply returns
the existing serial number.

I'm concerned about multiple sessions calling this at the same time with
the same key. While I *could* just put in a unique constraint and let
things fail, that's hardly graceful. It seems I should be able to lock
the lookup table, but I don't really know what mode to lock that table
in. Will ROW EXCLUSIVE keep the same key from being entered twice?

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Guy Rouillier 2005-09-06 21:29:31 Re: How to write jobs in postgresql
Previous Message Jürgen Rose 2005-09-06 21:09:43 SLOOOOOOOW