Re: No enough privileges for autovacuum worker - Mailing list pgsql-general

From Андрей Сычёв
Subject Re: No enough privileges for autovacuum worker
Date
Msg-id 18310311052.20210323200728@cifrasoft.com
Whole thread Raw
In response to Re: No enough privileges for autovacuum worker  (Adrian Klaver <adrian.klaver@aklaver.com>)
List pgsql-general
Definition for the table fpbackup.fp_vpn_data_2021w12:

CREATE TABLE fpbackup.fp_vpn_data_2021w12 (
        id int8 NOT NULL DEFAULT nextval('fp_vpn_data_id_seq'::regclass),
        fp_date_start timestamp NOT NULL,
        fp_date_end timestamp NOT NULL,
        ....
        fp_host varchar NOT NULL,
        ....
        CONSTRAINT c_d_fp_vpn_data_2021w12 CHECK (((fp_date_start >= '2021-03-19 00:00:00'::timestamp without time
zone)AND (fp_date_start < '2021-03-26 00:00:00'::timestamp without time zone))),
 
        CONSTRAINT fp_vpn_data_2021w12_pkey PRIMARY KEY (id)
)
INHERITS (public.fp_vpn_data)
TABLESPACE myts4
;
CREATE INDEX fp_vpn_data_2021w12_fp_host_idx ON fpbackup.fp_vpn_data_2021w12 USING btree (fp_host);
CREATE INDEX fp_vpn_data_2021w12_trigrams_vector_idx ON fpbackup.fp_vpn_data_2021w12 USING gin
(dict.trigrams_vector((fp_host)::text));

------------------------

Definition for the function dict.trigrams_array:

CREATE OR REPLACE FUNCTION dict.trigrams_array(word text)
 RETURNS text[]
 LANGUAGE plpgsql
 IMMUTABLE STRICT
AS $function$
        DECLARE
                result text[];
        BEGIN
                FOR i IN 1 .. length(word) - 2 LOOP
                        result := result || quote_literal(substr(lower(word), i, 3));
                END LOOP;

                RETURN result;
        END;
$function$
;

------------------------

I  do not know exactly what user the function running as is because it
is implicit call.

I  know that records in table the dict.trigrams_array are inserted by user
"worker".

Owner of the table fpbackup.fp_vpn_data_2021w12 is user "fpbkwriter".

user "worker" and "fpbkwriter" have the following permissions:

GRANT USAGE
ON SCHEMA
dict
TO worker;

GRANT EXECUTE
ON ALL FUNCTIONS IN SCHEMA
dict
TO worker;

GRANT fpbkwriter TO worker GRANTED BY postgres;

GRANT USAGE, CREATE
ON SCHEMA
fpbackup
TO fpbkwriter;

The  user  "fpbkwriter" does not have any privileges related to schema
"dict".




pgsql-general by date:

Previous
From: Michael Lewis
Date:
Subject: Re: MultiXactId wraparound and last aggressive vacuum time
Next
From: Adrian Klaver
Date:
Subject: Re: No enough privileges for autovacuum worker