Re: [HACKERS] Q about read committed in Oracle...
От | Dr. Michael Meskes |
---|---|
Тема | Re: [HACKERS] Q about read committed in Oracle... |
Дата | |
Msg-id | 19980730214130.A310@feivel.online-club.de обсуждение исходный текст |
Ответ на | Re: [HACKERS] Q about read committed in Oracle... (Vadim Mikheev <vadim@krs.ru>) |
Список | pgsql-hackers |
On Thu, Jul 30, 1998 at 04:40:13PM +0800, Vadim Mikheev wrote: > 1. CREATE TABLE test (x integer, y integer) > 2. INSERT INTO test VALUES (1, 1); > INSERT INTO test VALUES (1, 2); > INSERT INTO test VALUES (3, 2); > 3. run two session T1 and T2 > 4. in session T2 run > UPDATE test SET x = 1, y = 2 WHERE x <> 1 OR y <> 2; > 5. in session T1 run > SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; > UPDATE test SET y = 3 WHERE x = 1; UPDATE test SET y = 3 WHERE x = 1 * ERROR at line 1: ORA-08177: can't serialize access for this transaction > -- > -- 1st record will be changed by T2, qual for new record > -- version will be OK, but T1 should be aborted (???) > -- > 6. in session T2 run > COMMIT; > 7. in session T1 run > ROLLBACK; -- just to be sure -:) > 8. now in session T2 run > UPDATE test SET x = 2; > 9. in session T1 run > SET TRANSACTION ISOLATION LEVEL READ COMMITTED; > UPDATE test SET y = 4 WHERE x = 1 or x = 2; blocked > 11. in session T2 run > COMMIT; > 12. in session T1 run > SELECT * FROM test; -- results? > ^^^^^^^^^^^^^^^^^^ > I would like to be sure that T1 will update table... X Y ---------- ---------- 2 4 2 4 2 4 Michael -- Dr. Michael Meskes meskes@online-club.de, meskes@debian.org Go SF49ers! Go Rhein Fire! Use Debian GNU/Linux!
В списке pgsql-hackers по дате отправления: