diff -ur postgresql-16.1.orig/src/bin/pg_upgrade/option.c postgresql-16.1/src/bin/pg_upgrade/option.c --- postgresql-16.1.orig/src/bin/pg_upgrade/option.c 2023-11-06 23:04:27.000000000 +0100 +++ postgresql-16.1/src/bin/pg_upgrade/option.c 2023-12-13 21:51:21.445407619 +0100 @@ -456,8 +456,14 @@ get_sock_dir(ClusterInfo *cluster, bool live_check) { #if !defined(WIN32) - if (!live_check) + if (!live_check) { cluster->sockdir = user_opts.socketdir; +#ifndef UNIX_PATH_MAX +#define UNIX_PATH_MAX 108 +#endif + if (strlen(cluster->sockdir) >= UNIX_PATH_MAX - sizeof(".s.PGSQL.50432")) + strcpy(cluster->sockdir, "/tmp"); /* fall back to tmp */ + } else { /* diff -ur postgresql-16.1.orig/src/include/pg_config_manual.h postgresql-16.1/src/include/pg_config_manual.h --- postgresql-16.1.orig/src/include/pg_config_manual.h 2023-11-06 23:04:27.000000000 +0100 +++ postgresql-16.1/src/include/pg_config_manual.h 2023-12-13 21:49:50.563249439 +0100 @@ -206,7 +206,7 @@ * support them yet. */ #ifndef WIN32 -#define DEFAULT_PGSOCKET_DIR "/tmp" +#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql" #else #define DEFAULT_PGSOCKET_DIR "" #endif