$bugzilla --debug query --product Fedora --component virt-manager --component python-virtinst,virt-manager INFO:bugzilla:Connecting to https://bugzilla.redhat.com/xmlrpc.cgi INFO:bugzilla:Autodetecting Bugzilla type INFO:bugzilla:Using RHBugzilla4 for URL containing bugzilla.redhat.com INFO:bugzilla:Using cookies in /home/crobinso/.bugzillacookies for authentication DEBUG:bugzilla:bz.query: {'product': ['Fedora'], 'component': 'python-virtinst,virt-manager'} DEBUG:bugzilla:request_url is https://bugzilla.redhat.com/xmlrpc.cgi Server error: <Fault -32000: 'DBD::mysql::db selectall_arrayref failed: called with 1 bind variables when 3 are needed [for Statement "SELECT assigned_to,bug_file_loc,bug_id,bug_severity,bug_status,cclist_accessible,component_id,delta_ts,estimated_time,everconfirmed,lastdiffed,op_sys,priority,product_id,qa_contact,remaining_time,rep_platform,reporter_accessible,resolution,short_desc,status_whiteboard,target_milestone,version,reporter AS reporter_id,DATE_FORMAT(creation_ts, \'%Y.%m.%d %H:%i\') AS creation_ts,DATE_FORMAT(deadline, \'%Y-%m-%d\') AS deadline,cf_fixed_in,cf_cust_facing,cf_internal_whiteboard,cf_devel_whiteboard,cf_qa_whiteboard,cf_release_notes,cf_pm_score,cf_build_id,cf_story_points,cf_clone_of,cf_environment,cf_last_closed,cf_type,cf_regression_status,cf_mount_type,cf_documentation_action,cf_crm,cf_verified_branch FROM bugs WHERE \n(bug_id IN \n (SELECT bug_id\n FROM bugs b\n JOIN bug_cf_extra_component e USING (bug_id)\n JOIN components c ON (c.product_id = b.product_id AND e.value = c.name)\n WHERE c.id = ?\n )\n OR bugs.component_id = ?\n) AND product_id = ? ORDER BY bug_id"] at Bugzilla/Object.pm line 293\n\tBugzilla::Object::__ANON__() called at /usr/lib/perl5/vendor_perl/5.8.8/DBIx/Timeout.pm line 31\n\teval {...} called at /usr/lib/perl5/vendor_perl/5.8.8/DBIx/Timeout.pm line 31\n\tDBIx::Timeout::call_with_timeout(\'undef\', \'dbh\', \'Bugzilla::DB::Mysql=HASH(0x1f0b13f0)\', \'timeout\', 118, \'code\', \'CODE(0x1f1a7360)\') called at Bugzilla/Object.pm line 299\n\tBugzilla::Object::_do_list_select(\'Bugzilla::Bug\', \'\\x{a}(bug_id IN \\x{a} (SELECT bug_id\\x{a} FROM bugs b\\x{a} JOIN ...\', \'ARRAY(0x1f16c100)\', \'undef\') called at Bugzilla/Bug.pm line 328\n\tBugzilla::Bug::_do_list_select(\'Bugzilla::Bug\', \'\\x{a}(bug_id IN \\x{a} (SELECT bug_id\\x{a} FROM bugs b\\x{a} JOIN ...\', \'ARRAY(0x1f16c100)\', \'undef\') called at Bugzilla/Object.pm line 257\n\tBugzilla::Object::match(\'Bugzilla::Bug\', \'HASH(0x1eee1160)\') called at Bugzilla/Bug.pm line 581\n\tBugzilla::Bug::match(\'Bugzilla::Bug\', \'HASH(0x1eee1160)\') called at Bugzilla/WebService/Bug.pm line 504\n\tBugzilla::WebService::Bug::search(\'Bugzilla::WebService::Bug\', \'HASH(0x1ed8feb0)\') called at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Lite.pm line 2816\n\teval {...} called at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Lite.pm line 2801\n\teval {...} called at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Lite.pm line 2767\n\tSOAP::Server::handle(\'Bugzilla::WebService::Server::XMLRPC=HASH(0x1ec3aaf0)\', \'<?xml version=\\\'1.0\\\'?>\\x{a}<methodCall>\\x{a}<methodName>Bug.search</...\') called at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Transport/HTTP.pm line 432\n\tSOAP::Transport::HTTP::Server::handle(\'Bugzilla::WebService::Server::XMLRPC=HASH(0x1ec3aaf0)\') called at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Transport/HTTP.pm line 597\n\tSOAP::Transport::HTTP::CGI::handle(\'Bugzilla::WebService::Server::XMLRPC=HASH(0x1ec3aaf0)\') called at /var/www/html/bugzilla/xmlrpc.cgi line 48\n'> Using the API directly, it appears bugzilla now wants an array passed to the query, so ['virt-manager', 'python-virtinst']
Hi Cole, Not suprised the API changed to using an array. I'll try to hack up a patch to compensate on the backend. I already have a big translation layer for bugzilla4. :-) Cheers, Don
This package really needs some unit tests, I'm afraid to submit patches since I don't know if I'm breaking other users/bugzillas. The fact that query generation exists entirely in the CLI tool makes things such a pain, since query format obviously is specific to destination bugzilla. Is there a mailing list for python-bugzilla? I think the RH bugzilla upgrade is bringing all the users of this tool out into the open, it would be nice to keep the momentum going to improve things.
FYI I've got a python-bugzilla branch with 95% unittest coverage of bin/bugzilla query generation. Now that I've got a baseline I'll start breaking out the code to be dependent on bugzilla version.
I stuck a version of python-bugzilla that fixes a lot of these issues. Mainly a collection of fixes I received from people. http://people.redhat.com/dzickus/python-bugzilla/ If you want to test it out. Cheers, Don
Don, are you working off python-bugzilla.git ? If so can you publish a repo?
Hi Cole, I have a repo here: git://git.engineering.redhat.com/users/dzickus/python-bugzilla using 'latest' branch. It looks like Will pulled that branch so you can just fetch the latest from his upstream branch too. Cheers, Don
This was fixed in fedora a while ago