From 5c43460fdd063aeaf535189cb22dbcf639345c26 Mon Sep 17 00:00:00 2001 From: Andre Lorbach Date: Fri, 19 Dec 2008 15:01:58 +0100 Subject: [PATCH] Added some performance tweaks into mysql db driver, which will make searching for strings within messages faster. --- src/classes/logstreamdb.class.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/classes/logstreamdb.class.php b/src/classes/logstreamdb.class.php index e8bb4be..fda8257 100644 --- a/src/classes/logstreamdb.class.php +++ b/src/classes/logstreamdb.class.php @@ -432,6 +432,10 @@ class LogStreamDB extends LogStream { { global $querycount, $dbmapping; $szTableType = $this->_logStreamConfigObj->DBTableType; + + // Only perform query if row counting is enabled! + if ( strlen($this->_SQLwhereClause) > 0 && !$this->_logStreamConfigObj->DBEnableRowCounting ) + return $this->_firstPageUID; $szSql = "SELECT MAX(" . $dbmapping[$szTableType][SYSLOG_UID] . ") FROM " . $this->_logStreamConfigObj->DBTableName . $this->_SQLwhereClause; $myQuery = mysql_query($szSql, $this->_dbhandle); @@ -461,6 +465,10 @@ class LogStreamDB extends LogStream { global $querycount, $dbmapping; $szTableType = $this->_logStreamConfigObj->DBTableType; + // Only perform query if row counting is enabled! + if ( strlen($this->_SQLwhereClause) > 0 && !$this->_logStreamConfigObj->DBEnableRowCounting ) + return $this->_lastPageUID; + $szSql = "SELECT MIN(" . $dbmapping[$szTableType][SYSLOG_UID] . ") FROM " . $this->_logStreamConfigObj->DBTableName . $this->_SQLwhereClause; $myQuery = mysql_query($szSql, $this->_dbhandle); if ($myQuery) @@ -1097,6 +1105,9 @@ class LogStreamDB extends LogStream { // Append precreated where clause $sqlString .= $this->_SQLwhereClause; + // Output SQL Query into DEBUG +// OutputDebugMessage( "CreateSQLStatement result: " . $sqlString ); + // Append ORDER clause if ( $this->_readDirection == EnumReadDirection::Forward ) $sqlString .= " ORDER BY " . $dbmapping[$szTableType][$szSortColumn];