Веб-разработка на .NET // dotnet web dev
94 subscribers
1 photo
34 links
Разрабатываю на .NET. В этом канале пишу заметки о программировании в целом и разработке на дотнете в частности

Электропочта: [email protected]
Электросайт: boyarincev.net
Download Telegram
На днях поймали deadlock на блокировках в PostgreSQL и оказалась полезной эта статья - взял из неё запрос, который в удобном виде показывает, какие запросы какими запросами заблокированы

[eve] sandbox=# SELECT
COALESCE(blockingl.relation::regclass::text,blockingl.locktype) as locked_item,
blockeda.pid AS blocked_pid, blockeda.query as blocked_query,
blockedl.mode as blocked_mode, blockinga.pid AS blocking_pid,
blockinga.query as blocking_query, blockingl.mode as blocking_mode
FROM pg_catalog.pg_locks blockedl
JOIN pg_stat_activity blockeda ON blockedl.pid = blockeda.pid
JOIN pg_catalog.pg_locks blockingl ON(
( (blockingl.transactionid=blockedl.transactionid) OR
(blockingl.relation=blockedl.relation AND blockingl.locktype=blockedl.locktype)
) AND blockedl.pid != blockingl.pid)
JOIN pg_stat_activity blockinga ON blockingl.pid = blockinga.pid
WHERE NOT blockedl.granted
AND blockinga.datname='sandbox';

Ну и вообще статья хорошая - по шагам от простого сложного и с понятными примерами даёт неплохой экскурс в блокировки.

#postgresql
TikTok and Fitness: The Rise of Wellness Trends on the Platform