diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml
index 9ba147c..111f3b8 100644
--- a/doc/src/sgml/protocol.sgml
+++ b/doc/src/sgml/protocol.sgml
@@ -1392,6 +1392,28 @@ The commands accepted in walsender mode are:
+
+ SHOW name
+ SHOW
+
+
+
+ Requests the server to send the current setting of a run-time parameter. If the passed argument is a valid configuration name, server will return its value. This is similar to the SQL command .
+
+
+
+
+ name>
+
+
+ The name of a run-time parameter. Available parameters are documented
+ in .
+
+
+
+
+
+
TIMELINE_HISTORY tli
diff --git a/src/backend/replication/repl_gram.y b/src/backend/replication/repl_gram.y
index d962c76..2348195 100644
--- a/src/backend/replication/repl_gram.y
+++ b/src/backend/replication/repl_gram.y
@@ -61,6 +61,7 @@ Node *replication_parse_result;
/* Keyword tokens. */
%token K_BASE_BACKUP
%token K_IDENTIFY_SYSTEM
+%token K_SHOW
%token K_START_REPLICATION
%token K_CREATE_REPLICATION_SLOT
%token K_DROP_REPLICATION_SLOT
@@ -82,7 +83,7 @@ Node *replication_parse_result;
%type command
%type base_backup start_replication start_logical_replication
create_replication_slot drop_replication_slot identify_system
- timeline_history
+ timeline_history show
%type base_backup_opt_list
%type base_backup_opt
%type opt_timeline
@@ -112,6 +113,7 @@ command:
| create_replication_slot
| drop_replication_slot
| timeline_history
+ | show
;
/*
@@ -125,6 +127,18 @@ identify_system:
;
/*
+ * SHOW setting
+ */
+show:
+ K_SHOW IDENT
+ {
+ ShowCmd *cmd = makeNode(ShowCmd);
+ cmd->arg = $2;
+ $$ = (Node *) cmd;
+ }
+ ;
+
+/*
* BASE_BACKUP [LABEL '