Apr. 8th, 2013

metaclass: (Default)
http://www.postgresql.org/docs/9.1/static/transaction-iso.html
http://www.ibase.ru/devinfo/ibtrans.htm

Repeatable Read в Postgresql и Snapshot в Firebird почти эквивалентны. За одним исключением: в Postgresql Repeatable Read может вызывать ошибки конфликта транзакций, на что я вчера и наткнулся:
"Applications using this level must be prepared to retry transactions due to serialization failures."
В Firebird такого не наблюдается.

Далее, уровни изоляции, которые выставляют ADO.NET драйвера для дотнетовских констант - тоже отличаются.
У Firebird .NET провайдера IsolationLevel.RepeatableRead и IsolationLevel.Snapshot ссылаются на константу Concurrency (т.е. REPEATABLE READ), а IsolationLevel.Serializable ссылается на Consistency, т.е. SERIALIZABLE.

У NPGSQL провайдера IsolationLevel.RepeatableRead ссылается на REPEATABLE READ, а IsolationLevel.Snapshot и IsolationLevel.Serializable ссылается на SERIALIZABLE.

Такое ощущение, что это осталось с времен до 9.1 версии, где Serializable от Repeatable Read не отличался, судя по документации.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 7th, 2025 04:21 pm
Powered by Dreamwidth Studios