Моя конфигурация:
FROM postgres:12.9-bullseye
RUN apt update && apt install p7zip-full postgresql-server-dev-12 build-essential libssl-dev libkrb5-dev git -y
RUN mkdir /src && cd /src && git clone https://github.com/EnterpriseDB/pldebugger.git
RUN cd /src/pldebugger && make USE_PGXS=1 && make USE_PGXS=1 install
postgresql.conf
....
# - Shared Library Preloading -
shared_preload_libraries = 'plugin_debugger' # (change requires restart)
#local_preload_libraries = ''
#session_preload_libraries = ''
#jit_provider = 'llvmjit' # JIT library to use
...
version: '3.9'
services:
pg:
network_mode: 'host'
image: project/postgres
build:
context: config/docker/postgres-master
dockerfile: DockerFile
container_name: pg
volumes:
- ./config/docker/postgres-master/postgresql.conf:/etc/postgresql/postgresql.conf
pg-admin:
network_mode: 'host'
image: dpage/pgadmin4:6.15
container_name: pg-admin
Вхожу в pgAdmin, выполняю на моей базе:
CREATE EXTENSION pldbgapi;
Перезапускаю контейнеры.
Получаю следующее
direct debug - работает,
in-context debug - нет (термины
отсюда)
Т.е. если я выбираю функцию, на ней нажимаю на ней Debugging/Debug - открывается окно для прямого вызова функции с параметрами и там уже можно отлаживать
А если я выбираю функцию, на ней нажимаю на ней Debugging/Set Breakpoing - открывается окно с ошибкой:
The debugger plugin is not enabled. Please add the plugin to the shared_preload_libraries setting in the postgresql.conf file and restart the database server for indirect debugging.
Что я делаю не так?