From 8cdbef098bf0a5057619ced522f8b2e63d78fbc1 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Nov 2011 09:54:41 -0500 Subject: [PATCH] die when we get a bad connection error --- lib/framework.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/framework.php b/lib/framework.php index 4458313eb9..5d163547f7 100644 --- a/lib/framework.php +++ b/lib/framework.php @@ -160,6 +160,15 @@ function PEAR_ErrorToPEAR_Exception($err) common_log(LOG_ERR, "PEAR Error: $msg ($userInfo)"); + // HACK: queue handlers get kicked by the long-query killer, and + // keep the same broken connection. We die here to get a new + // process started. + + if (php_sapi_name() == 'cli' && preg_match('/nativecode=2006/', $msg)) { + common_log(LOG_ERR, "Lost DB connection; dying."); + exit(100); + } + if ($err->getCode()) { throw new PEAR_Exception($msg, $err, $err->getCode()); } else {