diff --git a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c index 5a370e80b33..2fe5da22b9a 100644 --- a/contrib/dblink/dblink.c +++ b/contrib/dblink/dblink.c @@ -207,16 +207,21 @@ dblink_get_conn(char *conname_or_str, * ensures that VFDs are closed if needed to make room.) */ if (!AcquireExternalFD()) + { +#ifndef WIN32 /* can't write #if within ereport() macro */ ereport(ERROR, (errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), errmsg("could not establish connection"), errdetail("There are too many open files on the local server."), -#ifndef WIN32 - errhint("Raise the server's max_files_per_process and/or \"ulimit -n\" limits.") + errhint("Raise the server's max_files_per_process and/or \"ulimit -n\" limits."))); #else - errhint("Raise the server's max_files_per_process setting.") + ereport(ERROR, + (errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), + errmsg("could not establish connection"), + errdetail("There are too many open files on the local server."), + errhint("Raise the server's max_files_per_process setting."))); #endif - )); + } /* OK to make connection */ conn = PQconnectdb(connstr); @@ -310,16 +315,21 @@ dblink_connect(PG_FUNCTION_ARGS) * that VFDs are closed if needed to make room.) */ if (!AcquireExternalFD()) + { +#ifndef WIN32 /* can't write #if within ereport() macro */ ereport(ERROR, (errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), errmsg("could not establish connection"), errdetail("There are too many open files on the local server."), -#ifndef WIN32 - errhint("Raise the server's max_files_per_process and/or \"ulimit -n\" limits.") + errhint("Raise the server's max_files_per_process and/or \"ulimit -n\" limits."))); #else - errhint("Raise the server's max_files_per_process setting.") + ereport(ERROR, + (errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), + errmsg("could not establish connection"), + errdetail("There are too many open files on the local server."), + errhint("Raise the server's max_files_per_process setting."))); #endif - )); + } /* OK to make connection */ conn = PQconnectdb(connstr); diff --git a/contrib/postgres_fdw/connection.c b/contrib/postgres_fdw/connection.c index a151c2c653f..e45647f3eaf 100644 --- a/contrib/postgres_fdw/connection.c +++ b/contrib/postgres_fdw/connection.c @@ -269,17 +269,23 @@ connect_pg_server(ForeignServer *server, UserMapping *user) * ensures that VFDs are closed if needed to make room.) */ if (!AcquireExternalFD()) + { +#ifndef WIN32 /* can't write #if within ereport() macro */ ereport(ERROR, (errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), errmsg("could not connect to server \"%s\"", server->servername), errdetail("There are too many open files on the local server."), -#ifndef WIN32 - errhint("Raise the server's max_files_per_process and/or \"ulimit -n\" limits.") + errhint("Raise the server's max_files_per_process and/or \"ulimit -n\" limits."))); #else - errhint("Raise the server's max_files_per_process setting.") + ereport(ERROR, + (errcode(ERRCODE_SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION), + errmsg("could not connect to server \"%s\"", + server->servername), + errdetail("There are too many open files on the local server."), + errhint("Raise the server's max_files_per_process setting."))); #endif - )); + } /* OK to make connection */ conn = PQconnectdbParams(keywords, values, false);