You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4php-dev@logging.apache.org by ih...@apache.org on 2011/01/12 22:07:29 UTC

svn commit: r1058319 - in /logging/log4php/trunk/src: changes/changes.xml main/php/appenders/LoggerAppenderPDO.php test/php/appenders/LoggerAppenderPDOTest.php

Author: ihabunek
Date: Wed Jan 12 21:07:29 2011
New Revision: 1058319

URL: http://svn.apache.org/viewvc?rev=1058319&view=rev
Log:
LOG4PHP-133: PDO appender doesn't close connections

Modified:
    logging/log4php/trunk/src/changes/changes.xml
    logging/log4php/trunk/src/main/php/appenders/LoggerAppenderPDO.php
    logging/log4php/trunk/src/test/php/appenders/LoggerAppenderPDOTest.php

Modified: logging/log4php/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/changes/changes.xml?rev=1058319&r1=1058318&r2=1058319&view=diff
==============================================================================
--- logging/log4php/trunk/src/changes/changes.xml (original)
+++ logging/log4php/trunk/src/changes/changes.xml Wed Jan 12 21:07:29 2011
@@ -24,6 +24,7 @@
   </properties>
   <body>
   	<release version="2.1" description="Stabilizing">
+  		<action type="fix" issue="LOG4PHP-133" by="Dmitry Katemirov,Ivan Habunek">PDO appender doesn't close connections</action>
   		<action type="fix" by="Ivan Habunek">Replaced calls to deprecated PHPUnit method assertTypeOf() with assertInternalType() and assertInstanceOf().</action>
   		<action type="fix" issue="LOG4PHP-104" by="Ivan Habunek">Refactored LoggerNDC and added tests</action>
   		<action type="fix" issue="LOG4PHP-105" by="Ivan Habunek">LoggerMDC needs refactoring + tests</action>

Modified: logging/log4php/trunk/src/main/php/appenders/LoggerAppenderPDO.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/main/php/appenders/LoggerAppenderPDO.php?rev=1058319&r1=1058318&r2=1058319&view=diff
==============================================================================
--- logging/log4php/trunk/src/main/php/appenders/LoggerAppenderPDO.php (original)
+++ logging/log4php/trunk/src/main/php/appenders/LoggerAppenderPDO.php Wed Jan 12 21:07:29 2011
@@ -200,7 +200,7 @@ class LoggerAppenderPDO extends LoggerAp
     public function close() {
     	if($this->closed != true) {
         	if ($this->db !== null) {
-            	$db = null;
+            	$this->db = null;
         	}
         	$this->closed = true;
     	}

Modified: logging/log4php/trunk/src/test/php/appenders/LoggerAppenderPDOTest.php
URL: http://svn.apache.org/viewvc/logging/log4php/trunk/src/test/php/appenders/LoggerAppenderPDOTest.php?rev=1058319&r1=1058318&r2=1058319&view=diff
==============================================================================
--- logging/log4php/trunk/src/test/php/appenders/LoggerAppenderPDOTest.php (original)
+++ logging/log4php/trunk/src/test/php/appenders/LoggerAppenderPDOTest.php Wed Jan 12 21:07:29 2011
@@ -138,4 +138,19 @@ class LoggerAppenderPDOTest extends PHPU
         $appender->setCreateTable(true);
             $appender->activateOptions();
     }
+    
+	/**
+	 * Check whether close() actually closes the database connection. 
+	 */
+    public function testClose() {
+    	$event = new LoggerLoggingEvent("LoggerAppenderPDOTest", new Logger("TEST"), LoggerLevel::getLevelError(), "testmessage");
+    	
+        $appender = new LoggerAppenderPDO("myname");
+        $appender->setDSN(self::dsn);
+        $appender->activateOptions();
+        $appender->append($event);
+        $appender->close();
+        
+        self::assertNull($appender->getDatabaseHandle());
+    }
 }