diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 6c69eb6dd7..6d3c3f7c92 100644 *** a/src/backend/access/transam/xlog.c --- b/src/backend/access/transam/xlog.c *************** *** 5378,5383 **** readRecoverySignalFile(void) --- 5378,5388 ---- static void validateRecoveryParameters(void) { + if (!ArchiveRecoveryRequested && recoveryTarget != RECOVERY_TARGET_UNSET) + ereport(FATAL, + (errmsg("recovery target cannot be specified for crash recovery"), + errdetail("recovery_target, recovery_target_lsn, recovery_target_name, recovery_target_time, recovery_target_xid may be set when archive recovery or standby mode is requested."))); + if (!ArchiveRecoveryRequested) return;