iliaa           Wed Jun 27 02:00:46 2007 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src    NEWS 
    /php-src/ext/pdo_pgsql      pgsql_driver.c 
  Log:
  Added persistent connection status checker to pdo_pgsql
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.803&r2=1.2027.2.547.2.804&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.803 php-src/NEWS:1.2027.2.547.2.804
--- php-src/NEWS:1.2027.2.547.2.803     Tue Jun 26 14:47:15 2007
+++ php-src/NEWS        Wed Jun 27 02:00:45 2007
@@ -10,6 +10,8 @@
 - Changed error handler to send HTTP 500 instead of blank page on PHP errors.
   (Dmitry, Andrei Nigmatulin)
 
+- Added persistent connection status checker to pdo_pgsql (Elvis
+  Pranskevichus, Ilia)
 - Added php_ini_loaded_file() function which returns the path to the actual
   php.ini in use. (Jani)
 - Added GD version constants GD_MAJOR_VERSION, GD_MINOR_VERSION
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_pgsql/pgsql_driver.c?r1=1.53.2.14.2.7&r2=1.53.2.14.2.8&diff_format=u
Index: php-src/ext/pdo_pgsql/pgsql_driver.c
diff -u php-src/ext/pdo_pgsql/pgsql_driver.c:1.53.2.14.2.7 
php-src/ext/pdo_pgsql/pgsql_driver.c:1.53.2.14.2.8
--- php-src/ext/pdo_pgsql/pgsql_driver.c:1.53.2.14.2.7  Mon Jan  1 09:36:05 2007
+++ php-src/ext/pdo_pgsql/pgsql_driver.c        Wed Jun 27 02:00:46 2007
@@ -18,7 +18,7 @@
   +----------------------------------------------------------------------+
 */
 
-/* $Id: pgsql_driver.c,v 1.53.2.14.2.7 2007/01/01 09:36:05 sebastian Exp $ */
+/* $Id: pgsql_driver.c,v 1.53.2.14.2.8 2007/06/27 02:00:46 iliaa Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -476,6 +476,17 @@
        return 1;
 }
 
+/* {{{ */
+static int pdo_pgsql_check_liveness(pdo_dbh_t *dbh TSRMLS_DC)
+{
+       pdo_pgsql_db_handle *H = (pdo_pgsql_db_handle *)dbh->driver_data;
+       if (PQstatus(H->server) == CONNECTION_BAD) {
+               PQreset(H->server);
+       }
+       return (PQstatus(H->server) == CONNECTION_OK) ? SUCCESS : FAILURE;
+}
+/* }}} */
+
 static int pdo_pgsql_transaction_cmd(const char *cmd, pdo_dbh_t *dbh TSRMLS_DC)
 {
        pdo_pgsql_db_handle *H = (pdo_pgsql_db_handle *)dbh->driver_data;
@@ -650,7 +661,7 @@
        pdo_pgsql_last_insert_id,
        pdo_pgsql_fetch_error_func,
        pdo_pgsql_get_attribute,
-       NULL,   /* check_liveness */
+       pdo_pgsql_check_liveness,       /* check_liveness */
        pdo_pgsql_get_driver_methods  /* get_driver_methods */
 };
 

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to