/** * Test for view pg_table_bloat * * Every test does raise division by zero if it failes * * @author: "Stefanie Janine Stölting" * @license: PostgreSQL https://opensource.org/licenses/postgresql */ DO $$ DECLARE pg_extension_installed BOOLEAN; view_source TEXT; BEGIN SELECT count(*) pgstattuple_exists FROM pg_extension WHERE extname = 'pgstattuple' INTO pg_extension_installed; IF pg_extension_installed THEN view_source := $string$ WITH test AS ( SELECT COUNT(*) AS exist , 0 AS zero FROM pg_catalog.pg_views WHERE viewname = 'pg_table_bloat' ) SELECT CASE WHEN 1 / test.exist = 1 THEN TRUE ELSE (1 / zero)::BOOLEAN END AS res FROM test ; $string$ ; EXECUTE view_source; END IF; END $$;