From def7a1e9b28be9ac0cd99972b1fda51b14fc01ad Mon Sep 17 00:00:00 2001 From: Domas Mituzas Date: Tue, 10 Aug 2004 13:55:29 +0000 Subject: [PATCH] split getOrderLimit() into getOrder() and Database::limitResult() --- includes/QueryPage.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/includes/QueryPage.php b/includes/QueryPage.php index fb5dea8c12..4952d2a719 100644 --- a/includes/QueryPage.php +++ b/includes/QueryPage.php @@ -40,6 +40,11 @@ class QueryPage { . wfLimitResult($limit,$offset); } + function getOrder() { + return " ORDER BY value " . + ($this->sortDescending() ? "DESC" : ""); + } + # Is this query expensive (for some definition of expensive)? Then we # don't let it run in miser mode. $wgDisableQueryPages causes all query # pages to be declared expensive. Some query pages are always expensive. @@ -81,7 +86,7 @@ class QueryPage { # Do query on the (possibly out of date) slave server $maxstored = 1000; - $res = $dbr->query( $sql . $this->getOrderLimit( 0, $maxstored ), $fname ); + $res = $dbr->query( $sql . $this->getOrder() . $dbr->limitResult( $maxstored,0 ), $fname ); # Fetch results $insertSql = "INSERT INTO $querycache (qc_type,qc_namespace,qc_title,qc_value) VALUES "; @@ -122,7 +127,8 @@ class QueryPage { } } if ( $res === false ) { - $res = $dbr->query( $sql . $this->getOrderLimit( $offset, $limit ), $fname ); + $res = $dbr->query( $sql . $this->getOrder() . + $dbr->limitResult( $limit,$offset ), $fname ); $num = $dbr->numRows($res); } @@ -163,7 +169,7 @@ class QueryPage { $feed->outHeader(); $dbr =& wfGetDB( DB_SLAVE ); - $sql = $this->getSQL() . $this->getOrderLimit( 0, 50 ); + $sql = $this->getSQL() . $this->getOrder().$dbr->limitResult( 50, 0 ); $res = $dbr->query( $sql, "QueryPage::doFeed" ); while( $obj = $dbr->fetchObject( $res ) ) { $item = $this->feedResult( $obj ); -- 2.20.1