[Change Request] Fix pkgdb privileged operations for old python-bugzilla

Toshio Kuratomi a.badger at gmail.com
Thu May 24 15:01:28 UTC 2012


As part of two situations I've pushed out a hotfix to pkgdb and would like
two +1's for the change.

The situations:
* Continuing work to get our apps working with the old python-bugzilla
  package from yesterday's problems between infrastructure and bugzilla
* Unknown causes of downtime for the fas servers.

We're currently trying to determine what's causing the second situation to
recur ~ every two hours.  As part of that we're trying to fix anything that
is out of the ordinary. So I've pushed this fix out and verified it works
with the reporter.  If I could get two +1's for after the fact application
during change freeze, that would be great.

The change:
When PackageDB makes changes to who owns a package or creates a new package
it needs to login to bugzilla and find out if the new owner has a bugzilla
account.  Those connections were failing for the same reason as fas's
export-bugzilla was failing yesterday: the older version of python-bugzilla
does not know how to get this information out of the new version of
bugzilla.  The fix is the same as yesterday's fix to export-bugzilla: for
now, use the RHBugzilla3 compatibility API to get this information.

https://fedorahosted.org/fedora-infrastructure/ticket/3304

diff --git a/modules/hotfix/files/pkgdb/utils.py b/modules/hotfix/files/pkgdb/utils.py
index 021a80f..8c121c5 100644
--- a/modules/hotfix/files/pkgdb/utils.py
+++ b/modules/hotfix/files/pkgdb/utils.py
@@ -51,7 +51,7 @@ from cherrypy import request
 from sqlalchemy import select, and_
 from sqlalchemy.exceptions import DataError
 
-from bugzilla import Bugzilla
+from bugzilla import RHBugzilla3
 import memcache
 
 # The Fedora Account System Module
@@ -218,9 +218,8 @@ def get_unprivileged_bz():
     bz_server = config.get('bugzilla.queryurl', config.get('bugzilla.url',
         'https://bugzilla.redhat.com'))
     bz_url = bz_server + '/xmlrpc.cgi'
-    _unpriv_bugzilla = Bugzilla(url=bz_url, cookiefile=None)
+    _unpriv_bugzilla = RHBugzilla3(url=bz_url, cookiefile=None)
     return _unpriv_bugzilla
-    
 
 def get_bz():
     '''Retrieve a connection to bugzilla
@@ -236,7 +235,7 @@ def get_bz():
     bz_url = bz_server + '/xmlrpc.cgi'
     bz_user = config.get('bugzilla.user')
     bz_pass = config.get('bugzilla.password')
-    _bugzilla = Bugzilla(url=bz_url, user=bz_user, password=bz_pass,
+    _bugzilla = RHBugzilla3(url=bz_url, user=bz_user, password=bz_pass,
             cookiefile=None)
     return _bugzilla


-Toshio
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.fedoraproject.org/pipermail/infrastructure/attachments/20120524/4b9bc074/attachment.sig>


More information about the infrastructure mailing list