Bug 823328 - query with query_format='advanced' column_list=['bug_id'] much much slower after upgrade to bugzilla 4
query with query_format='advanced' column_list=['bug_id'] much much slower af...
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: python-bugzilla (Show other bugs)
16
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Will Woods
Fedora Extras Quality Assurance
: Reopened
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-20 19:18 EDT by Cole Robinson
Modified: 2013-01-10 01:47 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-12-27 17:23:45 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Cole Robinson 2012-05-20 19:18:01 EDT
Previously when doing bugzilla queries we could pass a minimal column_list parameter which was a big speed boost.

Using the python-bugzilla library, I was previously doing

        bzapi.query({
            # 'query_format' only needed with rhbugzilla4
            'query_format': 'advanced',
            'emailtype1': 'substring',
            'emailassigned_to1': True,
            'email1': me,
            'column_list': ['bug_id'],
        })

Would complete in 3-5 seconds. Now it's taking over a minute.

Here's a comment from /usr/bin/bugzilla about why it's a useful optimization, if it's any help:

        #to optimize speed and reduce network traffic through lookups, we
        #specifically tell bugzilla the exact data we want.  This allows us
        #make one call to output the data, rather than have a follow-on
        #getbug() to grab more info than what the default has.
        #Testing has shown this to be a _huge_ time saver.  Unfortunately,
        #this list and the output format have to be in _sync_.  Otherwise,
        #you lose speed by doing a look-up for each new output element.
Comment 1 Simon Green 2012-05-20 19:31:07 EDT
From https://bugzilla.redhat.com/docs/en/html/api/Bugzilla/WebService/Bug.html#search

In addition to the parameters below, this method also accepts the standard include_fields, exclude_fields and extra_fields arguments

so if you specified

include_fields => ['id']

You would get just the bug id. (the field is known as 'id' in Bug.search / Bug.get now.

  -- simon
Comment 2 Cole Robinson 2012-05-21 08:42:34 EDT
Okay, if column_list isn't effective anymore, python-bugzilla probably needs to be changed, so reassigning.
Comment 3 Cole Robinson 2012-12-27 17:23:45 EST
This has been fixed for awhile

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