appdb/include maintainer.php sidebar_admin.php
WineHQ
wineowner at wine.codeweavers.com
Sun Mar 11 15:39:02 CDT 2007
ChangeSet ID: 30954
CVSROOT: /opt/cvs-commit
Module name: appdb
Changes by: wineowner at winehq.org 2007/03/11 15:39:02
Modified files:
include : maintainer.php sidebar_admin.php
Log message:
Alexander Nicolaysen Sørnes <alex at thehandofagony.com>,
Chris Morgan <cmorgan at alum.wpi.edu>
Fix queued maintainer sql with missing join causing millions of rows to be generated by a
relatively simple sql statement
Patch: http://cvs.winehq.org/patch.py?id=30954
Old revision New revision Changes Path
1.27 1.28 +23 -9 appdb/include/maintainer.php
1.29 1.30 +1 -1 appdb/include/sidebar_admin.php
Index: appdb/include/maintainer.php
diff -u -p appdb/include/maintainer.php:1.27 appdb/include/maintainer.php:1.28
--- appdb/include/maintainer.php:1.27 11 Mar 2007 20:39: 2 -0000
+++ appdb/include/maintainer.php 11 Mar 2007 20:39: 2 -0000
@@ -270,19 +270,33 @@ class maintainer
return $aAppsMaintained;
}
- function getQueuedMaintainerCount()
+ function objectGetEntriesCount($bQueued)
{
/* Excluding requests for queued apps and versions, as these are handled
automatically. One SELECT for super maintainers, one for maintainers. */
- $sQuery = "SELECT COUNT(DISTINCT maintainerId) as queued_maintainers FROM
- appMaintainers, appFamily, appVersion
- WHERE appMaintainers.queued='true' AND ((appFamily.appId =
- appMaintainers.appId AND appFamily.queued = 'false' AND
- appMaintainers.versionId = '') OR (
- appVersion.versionId = appMaintainers.versionId
- AND appVersion.queued = 'false'))";
+ $sQuery = "SELECT COUNT(DISTINCT maintainerId) as queued_maintainers FROM
+ appMaintainers, appFamily, appVersion WHERE
+ appMaintainers.queued = '?'
+ AND
+ appFamily.appId = appVersion.appId
+ AND
+ (
+ (
+ appFamily.appId = appMaintainers.appId
+ AND
+ appFamily.queued = 'false'
+ AND
+ appMaintainers.versionId = ''
+ )
+ OR
+ (
+ appVersion.versionId = appMaintainers.versionId
+ AND
+ appVersion.queued = 'false'
+ )
+ )";
- if(!($hResult = query_parameters($sQuery)))
+ if(!($hResult = query_parameters($sQuery, $bQueued ? "true" : "false")))
return FALSE;
$oRow = mysql_fetch_object($hResult);
Index: appdb/include/sidebar_admin.php
diff -u -p appdb/include/sidebar_admin.php:1.29 appdb/include/sidebar_admin.php:1.30
--- appdb/include/sidebar_admin.php:1.29 11 Mar 2007 20:39: 2 -0000
+++ appdb/include/sidebar_admin.php 11 Mar 2007 20:39: 2 -0000
@@ -21,7 +21,7 @@ function global_admin_menu() {
"screenshot").")",
BASE."objectManager.php?sClass=screenshot&bIsQueue=true&sTitle=".
"Screenshot%20Queue");
- $g->add("View Maintainer Queue (".Maintainer::getQueuedMaintainerCount().")",
+ $g->add("View Maintainer Queue (".Maintainer::objectGetEntriesCount(true).")",
BASE."objectManager.php?sClass=maintainer&bIsQueue=true&sTitle=".
"Maintainer%20Queue");
$g->add("View Maintainer Entries (".Maintainer::getMaintainerCount().")",
More information about the wine-cvs
mailing list