diff --git a/res/res_config_pgsql.c b/res/res_config_pgsql.c
index d3d11446a08f0f3beae04c2de4ac3ad8331704f4..4665823f33e47045556b2f88fb6d8238f908bf41 100644
--- a/res/res_config_pgsql.c
+++ b/res/res_config_pgsql.c
@@ -729,7 +729,7 @@ static int pgsql_reconnect(const char *database)
 		free(connInfo);
 		connInfo = NULL;
 		ast_log(LOG_DEBUG, "pgsqlConn=%p\n", pgsqlConn);
-		if (pgsqlConn) {
+		if (pgsqlConn && PQstatus(pgsqlConn) == CONNECTION_OK) {
 			ast_log(LOG_DEBUG, "Postgresql RealTime: Successfully connected to database.\n");
 			connect_time = time(NULL);
 			return 1;