изоляции? вот я, например, сделал некий селект: select count(*) from table1 where group_id = 10; и потом, если этот count(*) > 2 делаю update table2 set flag ='Y' where group_id = 10. как база поймет, что кто-то уже изменил этот флаг? Мне хочется понять идеи, чтобы потом понять документ, который написан by Dan R. K. Ports и Kevin Grittner
Такого нет. Есть Snapshot Isolation и Serializable. Это два отдельных уровня. Serializable выше по уровню изоляции по Грею и товарищам. Кроме этого, Serializable - по стандарту ANSI, вообще максимальный уровень изоляции транзакций из всех возможных, потому что по нему запрещены любые аномалии работы с данными, в том числе даже те, которые ещё неизвестны науке. Snapshot Isolation по Грею равновысок уровню Repeatable Read из ANSI, поскольку оба выше Read Commited, но оба ниже Serializable, и оба имеют одинаково ненормальные аномалии работы с данными, которые разные и несоотносимы друг с другом. Уточни свой вопрос, тогда на него можно будет ответить.
https://wiki.postgresql.org/wiki/Serializable А вообще, почему Вы не спрашиваете там, где положено ответят с куда большей вероятностью ( https://t.me/pgsql )? ;)
так я помню, что вы его как-то упоминали. и вот спросил в надежде, что вы тут ответите
Это дастаточно новый уровень. первый раз в 2008 году его описали. из известных баз он только в постгресе https://github.com/postgres/postgres/blob/master/src/backend/storage/lmgr/README-SSI
Ну тогда это просто видимо snapshot + блокировка изменяемых записей. Но лучше в PG и спрашивать, конечно.
Это не уровень, это новая реализация serializable.
И ничего подобного. Это действительно совершенно новый подход (в "классических" учебниках его нет, потому что сам алгоритм был изобретён (открыт?) только в 2008).
Я же Вам ссылку дал, где это разжёвывается (и там есть ссылки на примеры, оригинальную статью и т.п.)?!
мне поговорить интересно. ссылки нагуглить я и сам могу. должны же быть в чате люди, кто в 5 предложениях может обьяснить как он работает
Там всё равно написано лучше. Зачем copy/paste "учебника"? ;)
'поговорить интересно' - это к психологу, с почасовой оплатой
Николай, он врач, давай ближе к делу и без трёпа.
Конечно, нет (и не мог быть). Кстати, в Oracle вообще не serializable, а одно название.
Трудно объяснить короче, чем написано там, и не упустить суть, IMHO.
Речь была о Serializable Snapshot Isolation, а не snapshot isolation (MVCC). Это действительно новый метод... в общем, я (и не только я) это уже писал выше, и приводил ссылки.
How about сделать это самому? И как насчёт того, чтобы читать все относящиеся к делу сообщения?
Т.е. Вы не знаете, что это такое, OK.
Хоть голос оборвите, мне всё равно. По сути есть что возразить, или как обычно?
Обсуждают сегодня