From 1de9615a58c0147c447f6debf20ed25390884412 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 26 Aug 2003 21:15:27 +0000 Subject: [PATCH] Use separate SQLSTATE codes for file not found/file exists, rather than lumping them into ERRCODE_UNDEFINED_OBJECT/ERRCODE_DUPLICATE_OBJECT. This seems reasonable since 'object' was meant to refer to 'object in the database' and a file is outside the database. Per request from Dave Cramer. --- src/backend/utils/error/elog.c | 12 ++++++------ src/include/utils/errcodes.h | 4 +++- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index 0a4d85436d..15d6a1bb68 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -37,7 +37,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/error/elog.c,v 1.119 2003/08/08 21:42:11 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/error/elog.c,v 1.120 2003/08/26 21:15:27 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -530,20 +530,20 @@ errcode_for_file_access(void) edata->sqlerrcode = ERRCODE_INSUFFICIENT_PRIVILEGE; break; - /* Object not found */ + /* File not found */ case ENOENT: /* No such file or directory */ - edata->sqlerrcode = ERRCODE_UNDEFINED_OBJECT; + edata->sqlerrcode = ERRCODE_UNDEFINED_FILE; break; - /* Duplicate object */ + /* Duplicate file */ case EEXIST: /* File exists */ - edata->sqlerrcode = ERRCODE_DUPLICATE_OBJECT; + edata->sqlerrcode = ERRCODE_DUPLICATE_FILE; break; /* Wrong object type or state */ case ENOTDIR: /* Not a directory */ case EISDIR: /* Is a directory */ - case ENOTEMPTY: /* Directory not empty */ + case ENOTEMPTY: /* Directory not empty */ edata->sqlerrcode = ERRCODE_WRONG_OBJECT_TYPE; break; diff --git a/src/include/utils/errcodes.h b/src/include/utils/errcodes.h index 8db8e52320..13e42cf1b9 100644 --- a/src/include/utils/errcodes.h +++ b/src/include/utils/errcodes.h @@ -11,7 +11,7 @@ * * Copyright (c) 2003, PostgreSQL Global Development Group * - * $Id: errcodes.h,v 1.4 2003/08/04 00:43:32 momjian Exp $ + * $Id: errcodes.h,v 1.5 2003/08/26 21:15:27 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -294,6 +294,8 @@ /* Class 58 - System Error (class borrowed from DB2) */ /* (we define this as errors external to PostgreSQL itself) */ #define ERRCODE_IO_ERROR MAKE_SQLSTATE('5','8', '0','3','0') +#define ERRCODE_UNDEFINED_FILE MAKE_SQLSTATE('5','8', 'P','0','1') +#define ERRCODE_DUPLICATE_FILE MAKE_SQLSTATE('5','8', 'P','0','2') /* Class F0 - Configuration File Error (PostgreSQL-specific error class) */ #define ERRCODE_CONFIG_FILE_ERROR MAKE_SQLSTATE('F','0', '0','0','0')