Re: Non-Blocking Locks (i.e. Oracle NOWAIT)
От | Tom Lane |
---|---|
Тема | Re: Non-Blocking Locks (i.e. Oracle NOWAIT) |
Дата | |
Msg-id | 22695.1058282255@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Non-Blocking Locks (i.e. Oracle NOWAIT) (Jan Bernhardt <jb@baltic-online.de>) |
Список | pgsql-sql |
Jan Bernhardt <jb@baltic-online.de> writes: > I have a multi-user application which synchronizes access to certain datasets > via the database itself. If a user has a project in that application open no > other user should be able to work on it too. When developing the application I > considered the database to be a place to handle the synchronization since > transactions are (normally) an integral part of a database system. When a user > opens a project the application firstly locks a corresponding row. But since I > don't want the application to block if that row is already locked I use the > Oracle "NOWAIT" feature (SELECT ... FOR UPDATE NOWAIT) which tries to receive > the lock on the specified row and if that row is already locked it returns > with an error without blocking and I can tell the user that the project is > already in use. You might be able to use the contrib/userlock module for this. regards, tom lane
В списке pgsql-sql по дате отправления: