-
Notifications
You must be signed in to change notification settings - Fork 69
Description
Hi,
we used pg_pathman for a long time, but last week, our log got totally bloated with warns from pg_pathman. Something like this
WARNING: only the owner or superuser can change partitioning configuration of table "poi_data"
Context: SQL statement "DELETE FROM public.pathman_config WHERE partrel = ANY(relids)" PL/pgSQL function pathman_ddl_trigger_func() line 17 at SQL statement SQL statement "drop table if exists m_pomtabtr" PL/pgSQL function delikt_gis.precti_delikty_predpcr(integer,integer,integer,integer,integer,timestamp without time zone,timestamp without time zone,character varying) line 54 at SQL statement
The dropped table is a temp table and is definitely not partitioned in pg_pathman.
I'm not aware of any changes in our setup and nothing suspicious got logged around the time when warns started appearing in logs (around 01:10 AM), no DNF update, nothing.
More interestingly warns appear when dropping different temp tables under different users. I'm stuck. Maybe something in conjunction with PgBouncer and/or Timescale. Timescale has its event triggers for DDL, but they should be executed after pg_pathman triggers. Maybe PgBouncer messed up something within sessions...
I temporarily fix this by testing relids against pathman_config before delete is executed inside pathman_ddl_trigger_func()...
if exists(select 1 from public.pathman_config where partrel = any(relids)) then
/* Cleanup pathman_config */
DELETE FROM public.pathman_config WHERE partrel = ANY(relids);
/* Cleanup params table too */
DELETE FROM public.pathman_config_params WHERE partrel = ANY(relids);
end if;
After this mod, warns disappears. Any thoughts on this?
Environment
Extensions
| extname | extversion |
|---|---|
| plpgsql | 1.0 |
| postgis | 3.1.3 |
| postgis_raster | 3.1.3 |
| pg_pathman | 1.5 |
| unaccent | 1.1 |
| btree_gist | 1.5 |
| hstore | 1.7 |
| intarray | 1.3 |
| pg_buffercache | 1.3 |
| pg_prewarm | 1.2 |
| pg_stat_statements | 1.8 |
| pg_trgm | 1.5 |
| pgstattuple | 1.5 |
| tablefunc | 1.0 |
| timescaledb | 2.5.1 |
Version
PostgreSQL 13.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-4), 64-bit