| From: | u15074 <u15074(at)hs-harz(dot)de> |
|---|---|
| To: | pgsql-general(at)postgresql(dot)org |
| Subject: | Concurrent insert question |
| Date: | 2003-03-24 08:38:06 |
| Message-ID: | 1048495086.3e7ec3ee95a05@webmail.hs-harz.de |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
I have the following table:
create table test(
key int8,
length int4,
level int4,
pu oid,
primary key(key));
Now I have two concurrent transactions:
At the time the transactions start, there does't exist a row with value 1 for
the key column.
time transactionA:
1 begin;
2 set transaction level serializable;
3 insert into test(1,..,..,..);
4
5 commit;
time transactionB:
1 begin;
2 set transaction level serializable;
3
4 insert into test(1,..,..,..);
5
6 commit;
So my question is, what happens with the insert of transactionB?
Since a row with primary key value 1 doesn't exist within transactionB when
executing the insert-statement, it shouldn't be a problem within the
transaction.
But if so, how will the constraint be fullfilled? Will transactionB be aborted?
Is there a difference running in transaction level serializable or readcommited?
-------------------------------------------------
This mail sent through IMP: http://horde.org/imp/
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Dekkers Intermediair | 2003-03-24 09:10:18 | Re: postgreSQL as MSSQL2000 server? |
| Previous Message | shreedhar | 2003-03-24 07:24:06 | Re: Avoiding duplications in tables |