diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 56b01dc620b6e39ecfb729c123c1d611082d732d..722640b972e317825d498c83ca275c64ab89569b 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -16471,7 +16471,7 @@ postgres=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup()); <literal><function>pg_xlog_replay_pause()</function></literal> </entry> <entry><type>void</type></entry> - <entry>Pauses recovery immediately. + <entry>Pauses recovery immediately (restricted to superusers). </entry> </row> <row> @@ -16479,7 +16479,7 @@ postgres=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup()); <literal><function>pg_xlog_replay_resume()</function></literal> </entry> <entry><type>void</type></entry> - <entry>Restarts recovery if it was paused. + <entry>Restarts recovery if it was paused (restricted to superusers). </entry> </row> </tbody> @@ -16587,7 +16587,7 @@ postgres=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup()); for controlling and interacting with replication features. See <xref linkend="streaming-replication"> and <xref linkend="streaming-replication-slots"> for information about the - underlying features. + underlying features. Use of these functions is restricted to superusers. </para> <para> diff --git a/src/backend/access/transam/xlogfuncs.c b/src/backend/access/transam/xlogfuncs.c index f186468dd2c2dd260bc4831bddb7e27f62fae1a5..133143db9293ad5b592a19fec0b26e6a62f8c214 100644 --- a/src/backend/access/transam/xlogfuncs.c +++ b/src/backend/access/transam/xlogfuncs.c @@ -382,11 +382,6 @@ pg_xlog_replay_resume(PG_FUNCTION_ARGS) Datum pg_is_xlog_replay_paused(PG_FUNCTION_ARGS) { - if (!superuser()) - ereport(ERROR, - (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), - (errmsg("must be superuser to control recovery")))); - if (!RecoveryInProgress()) ereport(ERROR, (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),