On 2023-Sep-26, Zhaoxun Yan wrote: > Actually I have grant function pg_read_binary_file's execution right to the > user rep, and here are the setup for this role: > > CREATE EXTENSION repmgr; > GRANT pg_checkpoint TO rep; > GRANT pg_read_all_stats TO rep; > GRANT EXECUTE ON function pg_catalog.pg_ls_dir(text, boolean, boolean) TO rep; > GRANT EXECUTE ON function pg_catalog.pg_stat_file(text, boolean) TO rep; > GRANT EXECUTE ON function pg_catalog.pg_read_binary_file(text) TO rep; > GRANT EXECUTE ON function pg_catalog.pg_read_binary_file(text, bigint, > bigint, boolean Maybe you did this in the wrong database? Keep in mind that function privileges are per database. -- Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/ "People get annoyed when you try to debug them." (Larry Wall)