diff -urpa postgresql-10.5.orig/src/bin/pg_upgrade/option.c postgresql-10.5/src/bin/pg_upgrade/option.c --- postgresql-10.5.orig/src/bin/pg_upgrade/option.c 2018-08-22 19:57:55.237373015 +0000 +++ postgresql-10.5/src/bin/pg_upgrade/option.c 2018-08-22 19:59:10.944372163 +0000 @@ -474,8 +474,14 @@ */ if (GET_MAJOR_VERSION(cluster->major_version) >= 901) { - 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 -urpa postgresql-10.5.orig/src/include/pg_config_manual.h postgresql-10.5/src/include/pg_config_manual.h --- postgresql-10.5.orig/src/include/pg_config_manual.h 2018-08-22 19:57:55.095373017 +0000 +++ postgresql-10.5/src/include/pg_config_manual.h 2018-08-22 19:58:30.664372616 +0000 @@ -181,7 +181,7 @@ * here's where to twiddle it. You can also override this at runtime * with the postmaster's -k switch. */ -#define DEFAULT_PGSOCKET_DIR "/tmp" +#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql" /* * This is the default event source for Windows event log.