diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index 676d518b1a..54d3c558c6 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -269,7 +269,7 @@ bool		recoveryTargetInclusive = true;
 int			recoveryTargetAction = RECOVERY_TARGET_ACTION_PAUSE;
 TransactionId recoveryTargetXid;
 TimestampTz recoveryTargetTime;
-char	   *recoveryTargetName;
+const char *recoveryTargetName;
 XLogRecPtr	recoveryTargetLSN;
 int			recovery_min_apply_delay = 0;
 TimestampTz recoveryDelayUntilTime;
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index cdb6a6121f..aa564d153a 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -11434,7 +11434,7 @@ assign_recovery_target_name(const char *newval, void *extra)
 	if (newval && strcmp(newval, "") != 0)
 	{
 		recoveryTarget = RECOVERY_TARGET_NAME;
-		recoveryTargetName = (char *) newval;
+		recoveryTargetName = newval;
 	}
 	else
 		recoveryTarget = RECOVERY_TARGET_UNSET;
diff --git a/src/include/access/xlog.h b/src/include/access/xlog.h
index f90a6a9139..2f4e8f5f80 100644
--- a/src/include/access/xlog.h
+++ b/src/include/access/xlog.h
@@ -131,7 +131,7 @@ extern char *PrimarySlotName;
 /* indirectly set via GUC system */
 extern TransactionId recoveryTargetXid;
 extern TimestampTz recoveryTargetTime;
-extern char *recoveryTargetName;
+extern const char *recoveryTargetName;
 extern XLogRecPtr recoveryTargetLSN;
 extern RecoveryTargetType recoveryTarget;
 extern char *PromoteTriggerFile;