27.3. Просмотр информации о блокировках
Ещё одним удобным средством для отслеживания работы базы данных является системная таблица pg_locks
. Она позволяет администратору базы просматривать информацию об имеющихся блокировках в менеджере блокировок. Например, это может использоваться для:
просмотра всех имеющихся на данный момент блокировок, всех блокировок на отношения в определённой базе данных, всех блокировок на определённое отношение или всех блокировок, которые удерживает определённый сеанс Postgres Pro.
определения отношения в текущей базе данных с наибольшим количеством неразрешённых блокировок (оно может быть причиной конкуренции между клиентами базы данных).
определения воздействия конкуренции за блокировку на производительность базы данных в целом, а так же то, как меняется конкуренция в зависимости от загруженности базы.
Более детально представление pg_locks
описано в Разделе 53.74. Более подробную информацию о блокировках и управлению параллельным доступом в Postgres Pro можно получить в Главе 13.
SPI_prepare_params
Synopsis
SPIPlanPtr SPI_prepare_params(const char * command, ParserSetupHook parserSetup, void * parserSetupArg, int cursorOptions)
Description
SPI_prepare_params
creates and returns a prepared statement for the specified command, but doesn't execute the command. This function is equivalent to SPI_prepare_cursor
, with the addition that the caller can specify parser hook functions to control the parsing of external parameter references.