abrt / faf

Platform for collection and analysis of packages and package crashes
GNU General Public License v3.0
46 stars 47 forks source link

Gateway timeout associating bug #995

Closed opoplawski closed 1 year ago

opoplawski commented 2 years ago

Trying to associate bug https://bugzilla.redhat.com/show_bug.cgi?id=2021090 with https://retrace.fedoraproject.org/faf/reports/277417 but I keep getting a 504 gateway timeout error.

mgrabovsky commented 2 years ago

This is caused by the recent change in RH Bugzilla authentication. Here is a backtrace from retrace.fp.o:

DEBUG:bugzilla._backendxmlrpc: XMLRPC call: Bug.get({'extra_fields': ['comments', 'description', 'external_bugs', 'flags', 'sub_components', 'tags'], 'ids': [2031227]})
DEBUG:urllib3.connectionpool: https://bugzilla.redhat.com:443 "POST /xmlrpc.cgi HTTP/1.1" 200 374
Exception occurred, retrying in 90 seconds 3/3
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/pyfaf/bugtrackers/bugzilla.py", line 125, in download_bug_to_storage_no_retry
    bug = self.bz.getbug(bug_id)
  File "/usr/lib/python3.6/site-packages/bugzilla/base.py", line 1131, in getbug
    extra_fields=extra_fields)
  [...]
  File "/usr/lib64/python3.6/xmlrpc/client.py", line 656, in close
    raise Fault(**self._stack[0])
xmlrpc.client.Fault: <Fault Client: "Application failed during request deserialization: 32000: The method 'Bug.get' is not supported without using API keys and the the authentication header. See https://bugzilla.redhat.com/docs/en/html/api/core/v1/general.html#authentication for details on using the 'Authorization' header. at /usr/share/perl5/vendor_perl/SOAP/Lite.pm line 2855.\\n">

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/pyfaf/utils/decorators.py", line 50, in f_retry
    return func(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pyfaf/bugtrackers/bugzilla.py", line 135, in download_bug_to_storage
    return self.download_bug_to_storage_no_retry(db, bug_id)
  File "/usr/lib/python3.6/site-packages/pyfaf/bugtrackers/bugzilla.py", line 127, in download_bug_to_storage_no_retry
    if int(ex.faultCode) == 102:
ValueError: invalid literal for int() with base 10: 'Client'

That is, we need to update our Bugzilla module to use the proper authentication method.

On a related note, "retrying in 90 seconds" doesn't sound so appealing. Perhaps shorten the back-off as well?

mgrabovsky commented 2 years ago

Related note: We might not need write permissions, so the authentication might not be required – the Get Bug method can be used without authn. However, authentication is required to read non-public bugs.

mgrabovsky commented 1 year ago

Related PR: #1016

msrb commented 1 year ago

Note this issue was reported long before Bugzilla changes the auth method, but symptoms do look the same.

mgrabovsky commented 1 year ago

This should be fixed now. I was able to associate the report successfully.