Re: [HACKERS] Q: RI and isolevels
От | ZEUGSWETTER Andreas IZ5 |
---|---|
Тема | Re: [HACKERS] Q: RI and isolevels |
Дата | |
Msg-id | 219F68D65015D011A8E000006F8590C60267B39C@sdexcsrv1.f000.d0188.sd.spardat.at обсуждение исходный текст |
Список | pgsql-hackers |
In Informix: > Standard (draft) says: > > Regardless of the isolation level of the SQL-transaction, phenomena > P1, P2, and P3 shall not occur during the implied reading of schema > definitions performed on behalf of executing an SQL-statement, the > an alter table, create index or the like (tx must see new schema) > checking of integrity constraints, and the execution of referen- > tial actions associated with referential constraints. > > I'm not sure what they exactly mean. Could someone run two tests > for me (in Oracle and Informix/Sybase)? > > create table p (k integer primary key); > create table f (k integer references p(k)); > > session-1: begin work; > set transaction isolation level serializable; Informix needs: ^^^^^ level not mode > select * from f; -- just to ensure that xaction began -:) > > session-2: begin work; > insert into p values (1); > commit work; > > session-1: > insert into f values (1); > -- > -- Results? Abort? > -- > Goes ok in both isolation levels. Only if session-2 insert is not committed, the session-1 insert fails with: 691: Missing key in referenced table for referential constraint (zeu.r155_262). 144: ISAM error: key value locked > What's the result in the case of read committed isolevel in > session-1? Is insert succeeded? > Yes. Andreas
В списке pgsql-hackers по дате отправления: