Re: strange locks on PG 11 with Golang programs

Поиск
Список
Период
Сортировка
От Achilleas Mantzios
Тема Re: strange locks on PG 11 with Golang programs
Дата
Msg-id fbf5ed29-9787-2b71-57f9-91fcc8766e8b@matrix.gatewaynet.com
обсуждение исходный текст
Ответ на strange locks on PG 11 with Golang programs  (Josef Machytka <josef.machytka@gmail.com>)
Ответы Re: strange locks on PG 11 with Golang programs
Список pgsql-general
On 9/3/20 10:51 π.μ., Josef Machytka wrote:

We are lately experiencing very strange locks on PostgreSQL 11.7 when we process ETL tasks using our programs in Go 1.13.8 using standard libraries sql and pq.

ETL task has to rename tables but PostgreSQL shows that this simple operation waits for Lock on relation and select from PG wiki (https://wiki.postgresql.org/wiki/Lock_Monitoring) which should show blocking process shows that command "alter table .... rename to ...." is blocked by process "COPY .... to stdout" but from completely different table.


Fully review your programs for connection / xaction leaks. Do you use a connection pool? Make sure in the code that you close any connections that you open, even after exceptions , try to identify idle in transaction connections from pg_stat_activity , remember to either commit or rollback non-autocommit connections (just for the sake of clarity).

And from time to time even selects from some tables seem to by blocked by copy commands running on other tables. This is shown by the same select from PG wiki for blocking queries.

All this stuff runs from golang programs. So maybe problem is not on PostgreSQL but in golang libraries?

Thank you for any suggestions

Josef Machytka

Berlin



-- 
Achilleas Mantzios
IT DEV Lead
IT DEPT
Dynacom Tankers Mgmt

В списке pgsql-general по дате отправления:

Предыдущее
От: Julien Rouhaud
Дата:
Сообщение: Re: strange locks on PG 11 with Golang programs
Следующее
От: Josef Machytka
Дата:
Сообщение: Re: strange locks on PG 11 with Golang programs