From: | Ash Grove <ash_grv7(at)yahoo(dot)com> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | is an explicit lock necessary? |
Date: | 2006-05-04 18:10:56 |
Message-ID: | 20060504181056.14509.qmail@web52510.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi,
Does beginning a transaction put locks on the tables
queried within the transaction?
In the example below, is #2 necessary? My thought was
that I would need to use an explicit lock to make sure
that the sequence value I'm selecting in #4 is the
same one that is generated from #3. I'm worried about
another instance of the application doing an insert on
table1 between #3 and #4.
1) From my app, I turn off autocommit.
2) I lock table1 in access exclusive mode
3) I do an insert into table1 which generates a
primary key via nextval on sequence1
4) I grab grab the primary key value via currval on
sequence1
5) I do an insert on table2 which includes table1's
primary key so I can join the records later.
6) I manually commit
Thanks!
Ash
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Sullivan | 2006-05-04 18:47:48 | Re: is an explicit lock necessary? |
Previous Message | Oisin Glynn | 2006-05-04 18:00:57 | Re: Connecting to Postgres from other machines (outside localhost) |