Your message dated Fri, 15 May 2015 16:22:37 -0700 with message-id <[email protected]> and subject line Re: Bug#785405: bugs.debian.org: SOAP interface often fails with error message about undefined value as a subroutine reference has caused the Debian Bug report #785405, regarding bugs.debian.org: SOAP interface often fails with error message about undefined value as a subroutine reference to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 785405: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=785405 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: bugs.debian.org Severity: important Hello! Thanks for maintaing my favorite bug tracking system! Today I am having serious issues with the SOAP interface. When querying it from reportbug or querybts it seems to always fail with the following error message: $ reportbug reportbug *** Welcome to reportbug. Use ? for help at prompts. *** Note: bug reports are publicly archived (including the email address of the submitter). Detected character set: UTF-8 Please change your locale if this is incorrect. Using '"Francesco Poli (wintermute)" <[email protected]>' as your from address. Getting status for reportbug... Checking for newer versions at madison... Will send report to Debian (per lsb_release). Querying Debian BTS for reports on reportbug (source)... Traceback (most recent call last): File "/usr/bin/reportbug", line 2211, in <module> main() File "/usr/bin/reportbug", line 1081, in main return iface.user_interface() File "/usr/bin/reportbug", line 1703, in user_interface latest_first=self.options.latest_first) File "/usr/lib/python2.7/dist-packages/reportbug/ui/text_ui.py", line 517, in handle_bts_query source=source, http_proxy=http_proxy, archived=archived) File "/usr/lib/python2.7/dist-packages/reportbug/debbugs.py", line 1275, in get_reports stats = debianbts.get_status(bugs) File "/usr/lib/pymodules/python2.7/debianbts.py", line 179, in get_status reply = server.get_status(*nr) File "/usr/lib/python2.7/dist-packages/SOAPpy/Client.py", line 545, in __call__ return self.__r_call(*args, **kw) File "/usr/lib/python2.7/dist-packages/SOAPpy/Client.py", line 567, in __r_call self.__hd, self.__ma) File "/usr/lib/python2.7/dist-packages/SOAPpy/Client.py", line 480, in __call raise p SOAPpy.Types.faultType: <Fault soap:Client: Can't use an undefined value as a subroutine reference at /usr/share/perl5/SOAP/Lite.pm line 1218. > A substantantially similar error is obtained with querybts: $ querybts reportbug Querying Debian BTS for reports on reportbug... Traceback (most recent call last): File "/usr/bin/querybts", line 240, in <module> main() File "/usr/bin/querybts", line 220, in main mbox_reader_cmd=options.mbox_reader_cmd, latest_first=options.latest_first) File "/usr/lib/python2.7/dist-packages/reportbug/ui/text_ui.py", line 517, in handle_bts_query source=source, http_proxy=http_proxy, archived=archived) File "/usr/lib/python2.7/dist-packages/reportbug/debbugs.py", line 1275, in get_reports stats = debianbts.get_status(bugs) File "/usr/lib/pymodules/python2.7/debianbts.py", line 179, in get_status reply = server.get_status(*nr) File "/usr/lib/python2.7/dist-packages/SOAPpy/Client.py", line 545, in __call__ return self.__r_call(*args, **kw) File "/usr/lib/python2.7/dist-packages/SOAPpy/Client.py", line 567, in __r_call self.__hd, self.__ma) File "/usr/lib/python2.7/dist-packages/SOAPpy/Client.py", line 480, in __call raise p SOAPpy.Types.faultType: <Fault soap:Client: Can't use an undefined value as a subroutine reference at /usr/share/perl5/SOAP/Lite.pm line 1218. > I was about to report this as a bug against package "reportbug", when I found out that I could reproduce the issue with apt-listbugs, as well: $ apt-listbugs list -s critical reportbug Retrieving bug reports... 0% Fail Error retrieving bug reports from the server with the following error message: E: Can't use an undefined value as a subroutine reference at /usr/share/perl5/SOAP/Lite.pm line 1218. It could be because your network is down, or because of broken proxy servers, or the BTS server itself is down. Check network configuration and try again Retry downloading bug information? [Y/n] n Continue the installation anyway? [y/N] E: Exiting with error Please note that reportbug and querybts are written in Python, while apt-listbugs (which I maintain) is written in Ruby: hence, the two tools use different libraries. The awkward thing is that reportbug/querybts seems to always fail, while apt-listbugs sometimes fails and sometimes succeeds in querying the BTS SOAP interface: $ apt-listbugs -s critical list reportbug Retrieving bug reports... Done Parsing Found/Fixed information... Done critical bugs of reportbug (→ ) <Resolved in some Version> b1 - #690169 - reportbug: incorrectly labels a binary package choice as "Source:" (Fixed: reportbug/6.6.0) Merged with: 650386 Summary: reportbug(1 bug) I suspect that this issue is due to some server-side problem. Hence, I am reporting it against the bugs.debian.org pseudo-package. Please investigate this misbehavior and fix it. Thanks for your time! Bye. -- System Information: Debian Release: stretch/sid APT prefers testing APT policy: (800, 'testing'), (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.16.0-4-amd64 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Init: sysvinit (via /sbin/init)
--- End Message ---
--- Begin Message ---On Fri, 15 May 2015, Francesco Poli wrote: > On Fri, 15 May 2015 11:50:53 -0700 Don Armstrong wrote: > > this is most likely actually a bug in SOAP::Lite, > > but I haven't been able to track it down completely. We just upgraded > > one of the hosts to jessie, so that's what is triggering it. > > > > Hopefully I'll figure it out soon. > > Thank you, that's really appreciated. Figured this out; basically, the new version of SOAP::Lite changed how they were doing the ordering (probably for the better) and broke my hack. I fixed up the hack to just work, though I should probably check to make sure if it's even still necessary % git diff d48c1^ |git@:master@d48c1[debbu] diff --git a/cgi/soap.cgi b/cgi/soap.cgi index 53f7368..261042b 100755 --- a/cgi/soap.cgi +++ b/cgi/soap.cgi @@ -28,7 +28,12 @@ my $soap = Debbugs::SOAP::Server # kill off all of the date/time related bits in the serializer. my $typelookup = $soap->serializer()->{_typelookup}; for my $key (keys %{$typelookup}) { - delete $typelookup->{$key} if defined $key and $key =~ /Month|Day|Year|date|time|duration/i; + if (defined $key and + $key =~ /Month|Day|Year|date|time|duration/i + ) { + # set the sub to always return 0 + $typelookup->{$key}[1] = sub { 0 }; + } } our $warnings = ''; diff --git a/debian/changelog b/debian/changelog index e95c835..dfee543 100644 --- a/debian/changelog +++ b/debian/changelog @@ -32,6 +32,8 @@ debbugs (2.6.0~exp1) UNRELEASED; urgency=low * Support control at submit time. (Closes: #49228). * Add the limit command which constrains control@ (Closes: #208130). * Depend on libmime-tools-perl instead of libmime-perl. (Closes: #665001). + * Fix SOAP module hack to work around Date/Time encoding which broke in + newer versions of SOAP::Lite. (Closes: #785405) [Thanks to Arnout Engelen: ] * Add Homepage (closes: #670555). -- Don Armstrong http://www.donarmstrong.com The carbon footprint of a single human being is enormous. If you think about it, your honour, I'm an environmentalist. -- a softer world #283 http://www.asofterworld.com/index.php?id=283
--- End Message ---

