Bug 823606 - Bug.Fields takes a long time
Summary: Bug.Fields takes a long time
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Bugzilla
Classification: Community
Component: WebService
Version: 4.2
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: 4.2-8
Assignee: Simon Green
QA Contact: tools-bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-05-21 16:07 UTC by Don Zickus
Modified: 2018-12-09 06:29 UTC (History)
6 users (show)

Fixed In Version: 4.2.5-8
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-03-14 22:13:10 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 919968 0 medium CLOSED Bug.fields didn't return 'cf_last_closed' field 2021-02-22 00:41:40 UTC
Red Hat Bugzilla 920014 0 medium CLOSED Bug.Fields call return the fields that accounts have no privilege 2021-02-22 00:41:40 UTC

Internal Links: 919968 920014

Description Don Zickus 2012-05-21 16:07:48 UTC
Description of problem:
python-bugzilla relies on extracting available fields in bugzilla for local caching purposes.  The backend basically calls bug.fields.  It takes a noticably long time for that info to be retrieved.

At the same creating a bugzilla through the normal web interface, my firefox browser hung for a long time while trying to click on a component.  I assumed the ajax caching for components (and other pieces) is having performance problems too.

Version-Release number of selected component (if applicable):
latest 4.2

How reproducible:
always

Steps to Reproduce:
1. The following xmlrpc call was sent (sorry for the ugly python dump)

send: "POST /xmlrpc.cgi HTTP/1.1\r\nHost:
bugzilla.redhat.com\r\nAccept-Encoding: gzip\r\nCookie:
Bugzilla_logincookie=Ld64culKqF; Bugzilla_login=191026\r\nUser-Agent:
Python-urllib2/2.7 bugzilla.py/0.6.1\r\nContent-Type:
text/xml\r\nContent-Length: 284\r\n\r\n<?xml
version='1.0'?>\n<methodCall>\n<methodName>Bug.fields</methodName>\n<params>\n<param>\n<value><struct>\n<member>\n<name>include_fields</name>\n<value><array><data>\n<value><string>name</string></value>\n</data></array></value>\n</member>\n</struct></value>\n</param>\n</params>\n</methodCall>\n"

2.
3.
  
Actual results:
Hung for a good 30-40 seconds, froze my console for the script and froze my browser when entering from the web interface.

Expected results:


Additional info:

Comment 1 Simon Green 2012-10-10 05:55:40 UTC
We should be able to use filter_wants to not get information we don't need from the database.

  -- simon

Comment 2 Simon Green 2012-11-08 23:48:16 UTC
Bumping for the next release.

  -- simon

Comment 6 Chen Chen 2013-02-19 08:42:18 UTC
Verify version 4.4-1 on test server --> PASS

Verify steps:
1. Open the terminal, input python then press enter.
2. >>> import xmlrpclib
3. >>> proxy = xmlrpclib.ServerProxy('https://bzweb01-qe.app.eng.rdu.redhat.com/xmlrpc.cgi')
4. 1>>> fields = proxy.Bug.fields({'Bugzilla_login': 'redhat', 'Bugzilla_password': 'PWD'})
4.2 Compare the result with fields list that only redhat group can see.
5. >>> fields = proxy.Bug.fields({'Bugzilla_login': 'public', 'Bugzilla_password': 'PWD'})
5.2 Comapre the result with public fields list.

Actual result:
1. After step 4.1, Bug.fields should now take a matter of seconds to return data.
2. After step  4.2, result is same with fields list that only redhat group can see.
3. After step 5.1, Bug.fields should now take a matter of seconds to return data.
4. After step 5.2, result is same with fields list that only public user can see.

Comment 7 Jin Zhao 2013-02-27 01:49:28 UTC
Change to ON_QA in order to verify again on v4.2-8

Comment 23 Simon Green 2013-03-14 22:13:10 UTC
This change is now live.

  -- simon


Note You need to log in before you can comment on or make changes to this bug.