Ladění musíte povolit na dvou místech. Na PGAdmin a na databázi samotnou. Ten článek, na který jste odkazoval, to skvěle vysvětluje, ale byly tam určité nuance.
PGAdmin
Při aktualizaci souboru postgresql.conf soubor k načtení knihovny ladění, spouštěl jsem PGAdmin na Windows
takže soubor byl zde:
C:\Program Files\PostgreSQL\9.4\data\postgresql.conf
A cestu k souboru plugin_debugger.dll byl vlastně
$libdir/plugin_debugger.dll
ne
$libdir/plugins/plugin_debugger.dll
jak je uvedeno v článku. Tedy váš postgresql.conf potřeboval by takový řádek
shared_preload_libraries = '$libdir/plugin_debugger.dll'
Pokud si nejste jisti, vyhledejte skutečný .dll. Pokud používáte Linux, soubor, který budete hledat, je plugin_debugger.so . Nezapomeňte, že změna postgresql.conf soubor bude vyžadovat restart, aby se změna projevila.
Databáze PostgreSQL
Za předpokladu, že svou databázi PostgreSQL provozujete na linuxovém serveru toto shrnutí odvádí skvělou práci při vysvětlování, jak stáhnout závislosti pro umožnění ladění. Při instalaci se ujistěte, že používáte jako root.
Část, kterou lze snadno přehlédnout, je zadání příkazu proti skutečné databázi, kterou chcete ladit. Pro novější verze PostgreSQL budete muset udělat toto:
CREATE EXTENSION IF NOT EXISTS pldbgapi;
Pokud to nevrátí chybu, měli byste jít.
Některé další poznámky:
- Jak je uvedeno výše, můžete ladit pouze při spuštění jako super uživatelský účet
- Od jejich dokumentů
můžete ladit pouze funkce pl/pgsql. Pokud tedy vaše funkce říká něco jako
LANGUAGE cPGAdmin ani nezobrazí možnost nabídky ladění klepnutím pravým tlačítkem, když vyberete funkci. Hledejte něco, co máLANGUAGE plpgsqla měla by se zobrazit nabídka Debug.