Обсуждение: Is there an equivalent to sp_getapplock, sp_releaseapplock in PostgreSql?

Поиск
Список
Период
Сортировка

Is there an equivalent to sp_getapplock, sp_releaseapplock in PostgreSql?

От
İlyas Derse
Дата:

In MSSQL I am using sp_getapplock, sp_releaseapplock.

How can I achieve the same functionality in PostgreSql?

Re: Is there an equivalent to sp_getapplock, sp_releaseapplock inPostgreSql?

От
Andrei Zhidenkov
Дата:
I’m not sure what these function exactly do in MSSQL but what in Postgres you probably can use “Advisory Locks” (https://www.postgresql.org/docs/9.4/explicit-locking.html) in order to achive this.

On 13. Dec 2019, at 13:31, İlyas Derse <ilyasderse@gmail.com> wrote:

sp_getapplock

Re: Is there an equivalent to sp_getapplock, sp_releaseapplock in PostgreSql?

От
Justin
Дата:
Hi Ityas

Advisory locks do not act like the locks in MSSQL,  Postgresql will ignore advisory locks for other transactions,  its up the applications layer to poll/ obey/ enforce advisory locks

You can do the type of locking as  in MSSQL with Postgresql but its avoided in practice as that is the point of MVCC,  allow the database to handle locking/updating of resources.  Odds of Deadlocks go way down...

Postgresql has always run in the optional MSSQL Snap Shot Isolation Mode https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/snapshot-isolation-in-sql-server

I think MSSQL is now the only major database still shipped with MVCC turned off.. 

On Fri, Dec 13, 2019 at 9:06 AM Andrei Zhidenkov <andrei.zhidenkov@n26.com> wrote:
I’m not sure what these function exactly do in MSSQL but what in Postgres you probably can use “Advisory Locks” (https://www.postgresql.org/docs/9.4/explicit-locking.html) in order to achive this.

On 13. Dec 2019, at 13:31, İlyas Derse <ilyasderse@gmail.com> wrote:

sp_getapplock