A Dimecres, 12 d'octubre de 2011 12:13:41, Cédric Krier va escriure:
> Hi,
> 
> With the version 9.1 of PostgreSQL, the Serializable Isolation Level [1]
> has been completly implemented. As the documentation explains, application
> that uses this level must manage to replay the transaction in case of
> conflict and this is the purpose of the patch [2].
> But I'm wondering if this isolation level is not to strict for us. I think
> the Repeatable Read Isolation Level is enough as we lock tables for some
> specific actions like for stock assignation etc.
> As an example, I'm able to produce concurrency exception when creating
> parties on PostgreSQL 9.1.
> I think for performance, we must switch to Repeatable Read (also other
> backend doesn't have the serializable isolation level).
> 
> What do you think about?

That's something I've been thinking about too. I also think it's too strict 
for us, specially because it seems that the performance penalty even for not 
conflicting transactions may be relatively high in some cases. 

At the same time, locking a table may be too much also in some cases, but that 
could be improved using SELECT FOR UPDATE where the backend supports it when 
performance issues arise.

> 
> 
> [1] http://www.postgresql.org/docs/9.1/interactive/transaction-iso.html
> [2] http://codereview.tryton.org/141004/

-- 
Albert Cervera i Areny
http://www.NaN-tic.com
Tel: +34 93 553 18 03

http://twitter.com/albertnan 
http://www.nan-tic.com/blog

-- 
[email protected] mailing list

Reply via email to