diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2024-02-02 15:34:29 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2024-02-02 15:34:29 -0500 |
commit | 4493bfb709ae1b83e537daf82014d9b5ad65b26d (patch) | |
tree | 54c2d3d598508df2a53c041fdadf2f834045435c | |
parent | b59ae79b72165b0f50651b82a16c40611c238ffa (diff) | |
download | postgresql-4493bfb709ae1b83e537daf82014d9b5ad65b26d.tar.gz postgresql-4493bfb709ae1b83e537daf82014d9b5ad65b26d.zip |
Translate ENOMEM to ERRCODE_OUT_OF_MEMORY in errcode_for_file_access().
Previously you got ERRCODE_INTERNAL_ERROR, which seems inappropriate,
especially given that we're trying to avoid emitting that in reachable
cases.
Alexander Kuzmenkov
Discussion: https://postgr.es/m/CALzhyqzgQph0BY8-hFRRGdHhF8CoqmmDHW9S=hMZ-HMzLxRqDQ@mail.gmail.com
-rw-r--r-- | src/backend/utils/error/elog.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index bca06ca3315..1df08e40218 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -632,6 +632,10 @@ errcode_for_file_access(void) edata->sqlerrcode = ERRCODE_DISK_FULL; break; + case ENOMEM: /* Out of memory */ + edata->sqlerrcode = ERRCODE_OUT_OF_MEMORY; + break; + case ENFILE: /* File table overflow */ case EMFILE: /* Too many open files */ edata->sqlerrcode = ERRCODE_INSUFFICIENT_RESOURCES; |