From f836c2e37e20a9577c12de4686e4b26f2c5db44f Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 24 Aug 2006 03:15:43 +0000 Subject: [PATCH] Add some debug logging code to AllocateFile's failure path to log the specific Windows error code (GetLastError). This is a hopefully temporary hack to try to diagnose rare failures. Magnus Hagander --- src/backend/storage/file/fd.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/backend/storage/file/fd.c b/src/backend/storage/file/fd.c index 1765d66987..04cdd95a69 100644 --- a/src/backend/storage/file/fd.c +++ b/src/backend/storage/file/fd.c @@ -7,7 +7,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/storage/file/fd.c,v 1.128 2006/05/30 13:04:59 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/storage/file/fd.c,v 1.129 2006/08/24 03:15:43 tgl Exp $ * * NOTES: * @@ -1278,6 +1278,20 @@ TryAgain: errno = save_errno; } + /* + * TEMPORARY hack to log the Windows error code on fopen failures, + * in hopes of diagnosing some hard-to-reproduce problems. + */ +#ifdef WIN32 + { + int save_errno = errno; + + elog(LOG, "Windows fopen(\"%s\",\"%s\") failed: code %lu, errno %d", + name, mode, GetLastError(), save_errno); + errno = save_errno; + } +#endif + return NULL; }