From 3825963e7fbaa8dbc462d4f5286ff6149f4703dd Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Wed, 29 Aug 2012 17:05:22 -0400 Subject: Report postmaster.pid file as empty if it is empty, rather than reporting in contains invalid data. --- src/backend/utils/init/miscinit.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/backend/utils/init/miscinit.c') diff --git a/src/backend/utils/init/miscinit.c b/src/backend/utils/init/miscinit.c index 775d71f56c5..9a0f92c2682 100644 --- a/src/backend/utils/init/miscinit.c +++ b/src/backend/utils/init/miscinit.c @@ -766,6 +766,14 @@ CreateLockFile(const char *filename, bool amPostmaster, filename))); close(fd); + if (len == 0) + { + ereport(FATAL, + (errcode(ERRCODE_LOCK_FILE_EXISTS), + errmsg("lock file \"%s\" is empty", filename), + errhint("Either another server is starting, or the lock file is the remnant of a previous server startup crash."))); + } + buffer[len] = '\0'; encoded_pid = atoi(buffer); -- cgit v1.2.3