plpgsql_check

对 plpgsql 函数进行扩展检查

概览

扩展包名版本分类许可证语言
plpgsql_check2.9.1LANGMITC
ID扩展名BinLibLoadCreateTrustReloc模式
3060plpgsql_check-
相关扩展plpgsql pldbgapi plprofiler pg_hint_plan pgtap auto_explain plv8 plperl plpython3u

版本

类型仓库版本PG 大版本包名依赖
EXTMIXED2.9.11817161514plpgsql_checkplpgsql
RPMPIGSTY2.9.11817161514plpgsql_check_$v-
DEBPGDG2.9.11817161514postgresql-$v-plpgsql-check-
OS / PGPG18PG17PG16PG15PG14
el8.x86_64
PIGSTY 2.9.1
el8.x86_64.pg16 : plpgsql_check_16
plpgsql_check_16-2.9.1-1PIGSTY.el8.x86_64.rpm PIGSTY · 2.9.1 · 117.3KiB plpgsql_check_16-2.9.1-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.9.1 · 119.9KiB plpgsql_check_16-2.8.10-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.10 · 116.4KiB plpgsql_check_16-2.8.8-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.8 · 116.1KiB plpgsql_check_16-2.8.5-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.5 · 114.2KiB plpgsql_check_16-2.8.4-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.4 · 114.0KiB plpgsql_check_16-2.8.3-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.3 · 113.7KiB plpgsql_check_16-2.8.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.2 · 113.2KiB plpgsql_check_16-2.8.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.0 · 112.1KiB plpgsql_check_16-2.7.15-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.15 · 111.9KiB plpgsql_check_16-2.7.14-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.14 · 105.4KiB plpgsql_check_16-2.7.12-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.12 · 105.1KiB plpgsql_check_16-2.7.11-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.11 · 105.0KiB plpgsql_check_16-2.7.8-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.8 · 104.3KiB plpgsql_check_16-2.7.7-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.7 · 104.0KiB plpgsql_check_16-2.7.6-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.6 · 103.8KiB plpgsql_check_16-2.7.5-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.5 · 103.7KiB plpgsql_check_16-2.7.4-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.4 · 103.5KiB plpgsql_check_16-2.7.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.2 · 105.8KiB plpgsql_check_16-2.7.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.1 · 105.6KiB plpgsql_check_16-2.7.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.0 · 104.1KiB plpgsql_check_16-2.6.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.2 · 102.6KiB plpgsql_check_16-2.6.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.1 · 102.0KiB plpgsql_check_16-2.6.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.0 · 101.7KiB plpgsql_check_16-2.5.4-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.4 · 100.6KiB plpgsql_check_16-2.5.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.1 · 100.3KiB plpgsql_check_16-2.5.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.0 · 100.2KiB
PIGSTY 2.9.1
el8.x86_64.pg15 : plpgsql_check_15
plpgsql_check_15-2.9.1-1PIGSTY.el8.x86_64.rpm PIGSTY · 2.9.1 · 120.4KiB plpgsql_check_15-2.9.1-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.9.1 · 120.2KiB plpgsql_check_15-2.8.10-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.10 · 116.5KiB plpgsql_check_15-2.8.8-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.8 · 116.3KiB plpgsql_check_15-2.8.5-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.5 · 116.1KiB plpgsql_check_15-2.8.4-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.4 · 115.8KiB plpgsql_check_15-2.8.3-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.3 · 115.7KiB plpgsql_check_15-2.8.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.2 · 115.2KiB plpgsql_check_15-2.8.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.0 · 114.1KiB plpgsql_check_15-2.7.15-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.15 · 113.9KiB plpgsql_check_15-2.7.14-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.14 · 106.1KiB plpgsql_check_15-2.7.12-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.12 · 105.9KiB plpgsql_check_15-2.7.11-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.11 · 105.7KiB plpgsql_check_15-2.7.8-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.8 · 105.1KiB plpgsql_check_15-2.7.7-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.7 · 104.7KiB plpgsql_check_15-2.7.6-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.6 · 104.6KiB plpgsql_check_15-2.7.5-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.5 · 104.5KiB plpgsql_check_15-2.7.4-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.4 · 104.2KiB plpgsql_check_15-2.7.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.2 · 107.4KiB plpgsql_check_15-2.7.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.1 · 107.2KiB plpgsql_check_15-2.7.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.0 · 105.7KiB plpgsql_check_15-2.6.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.2 · 104.1KiB plpgsql_check_15-2.6.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.1 · 103.4KiB plpgsql_check_15-2.6.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.0 · 103.2KiB plpgsql_check_15-2.5.4-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.4 · 101.9KiB plpgsql_check_15-2.5.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.1 · 101.7KiB plpgsql_check_15-2.3.4-1.rhel8.x86_64.rpm PGDG · 2.3.4 · 98.6KiB plpgsql_check_15-2.3.2-1.rhel8.x86_64.rpm PGDG · 2.3.2 · 97.4KiB plpgsql_check_15-2.3.1-1.rhel8.x86_64.rpm PGDG · 2.3.1 · 97.3KiB plpgsql_check_15-2.3.0-1.rhel8.x86_64.rpm PGDG · 2.3.0 · 96.7KiB plpgsql_check_15-2.2.6-1.rhel8.x86_64.rpm PGDG · 2.2.6 · 95.6KiB plpgsql_check_15-2.2.5-1.rhel8.x86_64.rpm PGDG · 2.2.5 · 95.3KiB plpgsql_check_15-2.2.4-1.rhel8.x86_64.rpm PGDG · 2.2.4 · 95.3KiB plpgsql_check_15-2.2.3-1.rhel8.x86_64.rpm PGDG · 2.2.3 · 95.3KiB plpgsql_check_15-2.2.2-1.rhel8.x86_64.rpm PGDG · 2.2.2 · 94.8KiB
PIGSTY 2.9.1
el8.x86_64.pg14 : plpgsql_check_14
plpgsql_check_14-2.9.1-1PIGSTY.el8.x86_64.rpm PIGSTY · 2.9.1 · 120.4KiB plpgsql_check_14-2.9.1-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.9.1 · 120.1KiB plpgsql_check_14-2.8.10-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.10 · 116.4KiB plpgsql_check_14-2.8.8-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.8 · 116.2KiB plpgsql_check_14-2.8.5-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.5 · 116.0KiB plpgsql_check_14-2.8.4-1PGDG.rhel8.10.x86_64.rpm PGDG · 2.8.4 · 115.8KiB plpgsql_check_14-2.8.3-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.3 · 115.7KiB plpgsql_check_14-2.8.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.2 · 115.3KiB plpgsql_check_14-2.8.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.8.0 · 113.9KiB plpgsql_check_14-2.7.15-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.15 · 113.9KiB plpgsql_check_14-2.7.14-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.14 · 105.9KiB plpgsql_check_14-2.7.12-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.12 · 105.6KiB plpgsql_check_14-2.7.11-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.11 · 105.5KiB plpgsql_check_14-2.7.8-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.8 · 104.9KiB plpgsql_check_14-2.7.7-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.7 · 104.6KiB plpgsql_check_14-2.7.6-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.6 · 104.4KiB plpgsql_check_14-2.7.5-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.5 · 104.2KiB plpgsql_check_14-2.7.4-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.4 · 104.1KiB plpgsql_check_14-2.7.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.2 · 107.2KiB plpgsql_check_14-2.7.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.1 · 107.0KiB plpgsql_check_14-2.7.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.7.0 · 105.6KiB plpgsql_check_14-2.6.2-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.2 · 103.8KiB plpgsql_check_14-2.6.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.1 · 103.2KiB plpgsql_check_14-2.6.0-1PGDG.rhel8.x86_64.rpm PGDG · 2.6.0 · 103.0KiB plpgsql_check_14-2.5.4-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.4 · 101.7KiB plpgsql_check_14-2.5.1-1PGDG.rhel8.x86_64.rpm PGDG · 2.5.1 · 101.6KiB plpgsql_check_14-2.3.4-1.rhel8.x86_64.rpm PGDG · 2.3.4 · 98.4KiB plpgsql_check_14-2.3.2-1.rhel8.x86_64.rpm PGDG · 2.3.2 · 97.3KiB plpgsql_check_14-2.3.1-1.rhel8.x86_64.rpm PGDG · 2.3.1 · 97.2KiB plpgsql_check_14-2.3.0-1.rhel8.x86_64.rpm PGDG · 2.3.0 · 96.7KiB plpgsql_check_14-2.2.6-1.rhel8.x86_64.rpm PGDG · 2.2.6 · 95.6KiB plpgsql_check_14-2.2.5-1.rhel8.x86_64.rpm PGDG · 2.2.5 · 95.4KiB plpgsql_check_14-2.2.4-1.rhel8.x86_64.rpm PGDG · 2.2.4 · 95.3KiB plpgsql_check_14-2.2.3-1.rhel8.x86_64.rpm PGDG · 2.2.3 · 95.2KiB plpgsql_check_14-2.2.2-1.rhel8.x86_64.rpm PGDG · 2.2.2 · 94.7KiB plpgsql_check_14-2.2.1-1.rhel8.x86_64.rpm PGDG · 2.2.1 · 94.2KiB plpgsql_check_14-2.1.10-1.rhel8.x86_64.rpm PGDG · 2.1.10 · 90.4KiB plpgsql_check_14-2.1.8-1.rhel8.x86_64.rpm PGDG · 2.1.8 · 89.5KiB plpgsql_check_14-2.1.7-1.rhel8.x86_64.rpm PGDG · 2.1.7 · 89.4KiB plpgsql_check_14-2.1.5-1.rhel8.x86_64.rpm PGDG · 2.1.5 · 89.3KiB plpgsql_check_14-2.1.3-1.rhel8.x86_64.rpm PGDG · 2.1.3 · 88.7KiB plpgsql_check_14-2.1.2-1.rhel8.x86_64.rpm PGDG · 2.1.2 · 88.4KiB plpgsql_check_14-2.0.5-1.rhel8.x86_64.rpm PGDG · 2.0.5 · 87.6KiB plpgsql_check_14-2.0.3-1.rhel8.x86_64.rpm PGDG · 2.0.3 · 87.0KiB plpgsql_check_14-1.17.1-1.rhel8.x86_64.rpm PGDG · 1.17.1 · 83.0KiB
el8.aarch64
PIGSTY 2.9.1
el8.aarch64.pg16 : plpgsql_check_16
plpgsql_check_16-2.9.1-1PIGSTY.el8.aarch64.rpm PIGSTY · 2.9.1 · 108.8KiB plpgsql_check_16-2.9.1-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.9.1 · 111.1KiB plpgsql_check_16-2.8.10-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.10 · 108.1KiB plpgsql_check_16-2.8.8-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.8 · 107.8KiB plpgsql_check_16-2.8.5-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.5 · 105.3KiB plpgsql_check_16-2.8.4-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.4 · 105.2KiB plpgsql_check_16-2.8.3-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.3 · 105.0KiB plpgsql_check_16-2.8.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.2 · 104.5KiB plpgsql_check_16-2.8.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.0 · 103.6KiB plpgsql_check_16-2.7.15-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.15 · 103.5KiB plpgsql_check_16-2.7.14-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.14 · 97.6KiB plpgsql_check_16-2.7.12-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.12 · 97.3KiB plpgsql_check_16-2.7.11-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.11 · 97.2KiB plpgsql_check_16-2.7.8-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.8 · 96.5KiB plpgsql_check_16-2.7.7-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.7 · 96.2KiB plpgsql_check_16-2.7.6-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.6 · 96.1KiB plpgsql_check_16-2.7.5-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.5 · 95.9KiB plpgsql_check_16-2.7.4-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.4 · 95.7KiB plpgsql_check_16-2.7.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.2 · 98.4KiB plpgsql_check_16-2.7.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.1 · 98.1KiB plpgsql_check_16-2.7.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.0 · 96.8KiB plpgsql_check_16-2.6.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.2 · 95.3KiB plpgsql_check_16-2.6.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.1 · 94.7KiB plpgsql_check_16-2.6.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.0 · 94.5KiB plpgsql_check_16-2.5.4-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.4 · 93.4KiB plpgsql_check_16-2.5.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.1 · 93.1KiB plpgsql_check_16-2.5.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.0 · 93.0KiB
PIGSTY 2.9.1
el8.aarch64.pg15 : plpgsql_check_15
plpgsql_check_15-2.9.1-1PIGSTY.el8.aarch64.rpm PIGSTY · 2.9.1 · 111.4KiB plpgsql_check_15-2.9.1-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.9.1 · 111.0KiB plpgsql_check_15-2.8.10-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.10 · 108.1KiB plpgsql_check_15-2.8.8-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.8 · 107.8KiB plpgsql_check_15-2.8.5-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.5 · 106.9KiB plpgsql_check_15-2.8.4-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.4 · 106.8KiB plpgsql_check_15-2.8.3-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.3 · 106.6KiB plpgsql_check_15-2.8.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.2 · 106.1KiB plpgsql_check_15-2.8.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.0 · 104.8KiB plpgsql_check_15-2.7.15-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.15 · 104.8KiB plpgsql_check_15-2.7.14-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.14 · 98.1KiB plpgsql_check_15-2.7.12-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.12 · 97.8KiB plpgsql_check_15-2.7.11-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.11 · 97.7KiB plpgsql_check_15-2.7.8-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.8 · 97.0KiB plpgsql_check_15-2.7.7-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.7 · 96.7KiB plpgsql_check_15-2.7.6-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.6 · 96.5KiB plpgsql_check_15-2.7.5-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.5 · 96.4KiB plpgsql_check_15-2.7.4-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.4 · 96.2KiB plpgsql_check_15-2.7.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.2 · 99.8KiB plpgsql_check_15-2.7.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.1 · 99.7KiB plpgsql_check_15-2.7.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.0 · 98.3KiB plpgsql_check_15-2.6.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.2 · 96.6KiB plpgsql_check_15-2.6.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.1 · 96.0KiB plpgsql_check_15-2.6.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.0 · 95.8KiB plpgsql_check_15-2.5.4-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.4 · 94.7KiB plpgsql_check_15-2.5.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.1 · 94.5KiB plpgsql_check_15-2.3.4-1.rhel8.aarch64.rpm PGDG · 2.3.4 · 91.8KiB plpgsql_check_15-2.3.2-1.rhel8.aarch64.rpm PGDG · 2.3.2 · 90.7KiB plpgsql_check_15-2.3.1-1.rhel8.aarch64.rpm PGDG · 2.3.1 · 90.6KiB plpgsql_check_15-2.3.0-1.rhel8.aarch64.rpm PGDG · 2.3.0 · 90.1KiB plpgsql_check_15-2.2.6-1.rhel8.aarch64.rpm PGDG · 2.2.6 · 89.0KiB plpgsql_check_15-2.2.5-1.rhel8.aarch64.rpm PGDG · 2.2.5 · 88.8KiB plpgsql_check_15-2.2.4-1.rhel8.aarch64.rpm PGDG · 2.2.4 · 88.8KiB plpgsql_check_15-2.2.3-1.rhel8.aarch64.rpm PGDG · 2.2.3 · 88.7KiB
PIGSTY 2.9.1
el8.aarch64.pg14 : plpgsql_check_14
plpgsql_check_14-2.9.1-1PIGSTY.el8.aarch64.rpm PIGSTY · 2.9.1 · 111.4KiB plpgsql_check_14-2.9.1-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.9.1 · 111.0KiB plpgsql_check_14-2.8.10-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.10 · 108.0KiB plpgsql_check_14-2.8.8-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.8 · 107.8KiB plpgsql_check_14-2.8.5-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.5 · 106.9KiB plpgsql_check_14-2.8.4-1PGDG.rhel8.10.aarch64.rpm PGDG · 2.8.4 · 106.8KiB plpgsql_check_14-2.8.3-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.3 · 106.5KiB plpgsql_check_14-2.8.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.2 · 106.1KiB plpgsql_check_14-2.8.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.8.0 · 104.9KiB plpgsql_check_14-2.7.15-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.15 · 104.8KiB plpgsql_check_14-2.7.14-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.14 · 97.9KiB plpgsql_check_14-2.7.12-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.12 · 97.6KiB plpgsql_check_14-2.7.11-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.11 · 97.5KiB plpgsql_check_14-2.7.8-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.8 · 96.8KiB plpgsql_check_14-2.7.7-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.7 · 96.5KiB plpgsql_check_14-2.7.6-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.6 · 96.4KiB plpgsql_check_14-2.7.5-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.5 · 96.2KiB plpgsql_check_14-2.7.4-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.4 · 96.1KiB plpgsql_check_14-2.7.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.2 · 99.6KiB plpgsql_check_14-2.7.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.1 · 99.4KiB plpgsql_check_14-2.7.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.7.0 · 98.0KiB plpgsql_check_14-2.6.2-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.2 · 96.4KiB plpgsql_check_14-2.6.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.1 · 95.7KiB plpgsql_check_14-2.6.0-1PGDG.rhel8.aarch64.rpm PGDG · 2.6.0 · 95.6KiB plpgsql_check_14-2.5.4-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.4 · 94.5KiB plpgsql_check_14-2.5.1-1PGDG.rhel8.aarch64.rpm PGDG · 2.5.1 · 94.3KiB plpgsql_check_14-2.3.4-1.rhel8.aarch64.rpm PGDG · 2.3.4 · 91.6KiB plpgsql_check_14-2.3.2-1.rhel8.aarch64.rpm PGDG · 2.3.2 · 90.6KiB plpgsql_check_14-2.3.1-1.rhel8.aarch64.rpm PGDG · 2.3.1 · 90.5KiB plpgsql_check_14-2.3.0-1.rhel8.aarch64.rpm PGDG · 2.3.0 · 90.0KiB plpgsql_check_14-2.2.6-1.rhel8.aarch64.rpm PGDG · 2.2.6 · 88.9KiB plpgsql_check_14-2.2.5-1.rhel8.aarch64.rpm PGDG · 2.2.5 · 88.8KiB plpgsql_check_14-2.2.4-1.rhel8.aarch64.rpm PGDG · 2.2.4 · 88.7KiB plpgsql_check_14-2.2.3-1.rhel8.aarch64.rpm PGDG · 2.2.3 · 88.6KiB
el9.x86_64
el9.aarch64
el10.x86_64
el10.aarch64
d12.x86_64
d12.aarch64
d13.x86_64
d13.aarch64
u22.x86_64
u22.aarch64
u24.x86_64
u24.aarch64
u26.x86_64
u26.aarch64

构建

您可以使用 pig build 命令构建 plpgsql_check 扩展的 RPM 包:

pig build pkg plpgsql_check         # 构建 RPM 包

安装

您可以直接安装 plpgsql_check 扩展包的预置二进制包,首先确保 PGDGPIGSTY 仓库已经添加并启用:

pig repo add pgsql -u          # 添加仓库并更新缓存

使用 pig 或者是 apt/yum/dnf 安装扩展:

pig install plpgsql_check;          # 当前活跃 PG 版本安装
pig ext install -y plpgsql_check -v 18  # PG 18
pig ext install -y plpgsql_check -v 17  # PG 17
pig ext install -y plpgsql_check -v 16  # PG 16
pig ext install -y plpgsql_check -v 15  # PG 15
pig ext install -y plpgsql_check -v 14  # PG 14
dnf install -y plpgsql_check_18       # PG 18
dnf install -y plpgsql_check_17       # PG 17
dnf install -y plpgsql_check_16       # PG 16
dnf install -y plpgsql_check_15       # PG 15
dnf install -y plpgsql_check_14       # PG 14
apt install -y postgresql-18-plpgsql-check   # PG 18
apt install -y postgresql-17-plpgsql-check   # PG 17
apt install -y postgresql-16-plpgsql-check   # PG 16
apt install -y postgresql-15-plpgsql-check   # PG 15
apt install -y postgresql-14-plpgsql-check   # PG 14

预加载配置

shared_preload_libraries = 'plpgsql_check';

创建扩展

CREATE EXTENSION plpgsql_check CASCADE;  -- 依赖: plpgsql

用法

来源:official READMEv2.9.1 release noteslocal package metadata

plpgsql_check 是面向 PL/pgSQL 的检查器、linter、性能分析器、跟踪器和覆盖率工具。它可以在开发阶段发现许多错误,而不是等到运行时才失败。

CREATE EXTENSION plpgsql_check;

检查函数

SELECT * FROM plpgsql_check_function('my_function()');
SELECT * FROM plpgsql_check_function('my_function(int, text)');
SELECT * FROM plpgsql_check_function('my_function()', fatal_errors := false);

返回表的变体适合生成结构化报告:

SELECT *
FROM plpgsql_check_function_tb('my_function()');

输出格式

SELECT * FROM plpgsql_check_function('fx()', format := 'text');
SELECT * FROM plpgsql_check_function('fx()', format := 'json');
SELECT * FROM plpgsql_check_function('fx()', format := 'xml');

检查触发器函数

SELECT * FROM plpgsql_check_function('my_trigger_func()', 'my_table');

SELECT * FROM plpgsql_check_function(
  'my_trigger_func()',
  'my_table',
  newtable := 'newtab',
  oldtable := 'oldtab'
);

警告类别

SELECT * FROM plpgsql_check_function(
  'fx()',
  extra_warnings := true,
  performance_warnings := true,
  security_warnings := true,
  compatibility_warnings := true
);
  • extra_warnings 覆盖缺少返回、死代码、未使用参数等问题。
  • performance_warnings 覆盖性能相关检查。
  • security_warnings 包括 SQL 注入风险等检查。
  • compatibility_warnings 报告过时或对版本敏感的 PL/pgSQL 模式。

批量检查所有函数

SELECT p.oid, p.proname, plpgsql_check_function(p.oid)
FROM pg_catalog.pg_namespace n
JOIN pg_catalog.pg_proc p ON p.pronamespace = n.oid
JOIN pg_catalog.pg_language l ON p.prolang = l.oid
WHERE l.lanname = 'plpgsql'
  AND p.prorettype <> 'pg_catalog.trigger'::pg_catalog.regtype;

被动模式

被动模式会在函数启动时检查函数。它适合开发或预生产环境,因为会带来额外开销。

LOAD 'plpgsql_check';
SET plpgsql_check.mode = 'every_start';

常用设置:

plpgsql_check.mode = [ disabled | by_function | fresh_start | every_start ]
plpgsql_check.fatal_errors = [ yes | no ]
plpgsql_check.show_nonperformance_warnings = false
plpgsql_check.show_performance_warnings = false

性能分析器

SELECT plpgsql_check_profiler(true);

SELECT my_function();

SELECT lineno, avg_time, source
FROM plpgsql_profiler_function_tb('my_function()');

SELECT stmtid, parent_stmtid, lineno, exec_stmts, stmtname
FROM plpgsql_profiler_function_statements_tb('my_function()');

SELECT * FROM plpgsql_profiler_functions_all();
SELECT plpgsql_profiler_reset_all();

若要使用共享性能分析统计,请在 plpgsql_check 之前预加载 plpgsql

shared_preload_libraries = 'plpgsql,plpgsql_check'

没有共享预加载时,性能分析数据仅限于当前活动会话。

跟踪器

跟踪会为函数和语句的进入/退出发出 notice,并可能暴露变量值。它默认关闭,只应通过超级用户控制的设置启用。

SET plpgsql_check.enable_tracer = on;
SELECT plpgsql_check_tracer(true);
SET plpgsql_check.tracer_verbosity = terse;

依赖追踪

SELECT *
FROM plpgsql_show_dependency_tb('my_function(int)');

覆盖率指标

SELECT * FROM plpgsql_coverage_statements('my_function()');
SELECT * FROM plpgsql_coverage_branches('my_function()');

Pragma 指令

在函数内部使用 pragma 调用,告诉 plpgsql_check 动态 SQL、临时表、推断出的 record 类型,或局部检查设置:

CREATE OR REPLACE FUNCTION fx(anyelement) RETURNS text AS $$
BEGIN
  PERFORM plpgsql_check_pragma('type: r (id int, processed bool)');
  RETURN $1::text;
END;
$$ LANGUAGE plpgsql;

注意事项

  • Pigsty 将 plpgsql_check 2.9.1 作为 PostgreSQL 14-18 的 RPM 打包;DEB 包来自 PGDG。
  • 该扩展要求 plpgsql。主动检查不强制要求预加载,但共享性能分析存储以及跟踪器/性能分析器的可靠早期初始化需要预加载。
  • v2.9.1 修复了被跟踪 inline block 失败时可能发生的崩溃;这个补丁发布没有记录新的面向用户 SQL API。
  • 跟踪器可能暴露函数参数或变量值。对 security-definer 函数或敏感数据使用时要格外谨慎。

最后修改 2026-06-18: extension data update (63e2bd9)