count_files ,
                  
                  
                  coalesce(sum((pg_stat_file('./pg_wal/' || rtrim(ready.name,'.ready'))).size),0) AS size_files
                  
                  
                  FROM (
                  
                  
                  SELECT name
                  
                  
                  FROM pg_ls_dir('./pg_wal/archive_status') name
                  
                  
                  WHERE right( name,6)= '.ready'
                  
                  
                   ) ready
                  
                  
                   ) T;
                  
                  
                  Если я его выполняю от пользователя postgres - то он выполняется.Если я его выполняю от другого пользователя то получаю ошибку :
                  
                  
                  ERROR: permission denied for function pg_ls_dir
                  
                  
                  Как дать пользователю права на выполнение функции?
                  
                  
                
А может не надо? Сделайте функцию от postgres и пускай обычный юзер запускает.
Обсуждают сегодня