diff -rc a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c
*** a/contrib/dblink/dblink.c	Wed Mar  8 15:46:00 2017
--- b/contrib/dblink/dblink.c	Wed Mar  8 15:46:18 2017
***************
*** 276,281 ****
--- 276,286 ----
  
  	/* check password in connection string if not superuser */
  	dblink_connstr_check(connstr);
+ 	if (!connname && pconn->conn)
+ 	{
+ 		PQfinish(pconn->conn);
+ 		pconn->conn = NULL;
+ 	}
  	conn = PQconnectdb(connstr);
  
  	if (PQstatus(conn) == CONNECTION_BAD)
