Re: lock - feedback
От | Merlin Moncure |
---|---|
Тема | Re: lock - feedback |
Дата | |
Msg-id | 6EE64EF3AB31D5448D0007DD34EEB3417DD591@Herge.rcsinc.local обсуждение исходный текст |
Ответ на | lock - feedback (Thomas Rokohl <rokohl@raygina.de>) |
Ответы |
Re: lock - feedback
|
Список | pgsql-odbc |
> > Have you looked at contrib\userlock? With it, you can simulate > > pessimistic locks with a non-blocking result code. > > > > Merlin > > > > > > > contrib/userlock? where i can find something about this? in the manual i http://developer.postgresql.org/cvsweb.cgi/~checkout~/pgsql/contrib/user lock/README.user_locks?rev=1.3;content-type=text%2Fplain > can't find something ?!?! > mhm what is with the "lost update" problem, can i solve it with it?!?! probably. However, in many cases proper use of transactions is more appropriate. This will be even easier to do when we get proper assertions. > i can't visualize how it can works? select user_write_lock(oid) from my_table where value = x; returns 1 on success, 0 on failure. just be careful... select user_write_lock(oid) from my_table where value = x order by y limit 1; can acquire more locks than you might think since the table has to be materialized to do the order. better to write: select user_write_lock(oid) from ( select oid, * from my_table where value = x order by y limit 1; ) also, don't use oid :). In my applications, I make a domain type called 'cuid' which pulls nextval() from a public sequence. Put that into your tables and lock on it. Just watch for dump/restore. Merlin
В списке pgsql-odbc по дате отправления: