Comment 6 for bug 222617

Revision history for this message
Dimitrios Symeonidis (azimout) wrote :

Attaching the resolution as described in ubuntuforums:

 Solution that worked for me.
I ran into what sounds like the same bug after installing Hellanzb on Kubuntu 8.04 (Hardy Heron) (similar to this and this bug report).

The problem was basically that the reported download speed was very low (1/10th the speed it should be), and that Hellanzb was uploading as much as it was downloading. Moreover, the debug log (which can be found at ~/.hellanzb/log-debug if you've activated it) had repeated error messages like:
Code:

2008-06-09 20:47:27,625 giganews[6] getting GROUP: alt.binaries.t
2008-06-09 20:47:27,625 giganews[8] got GROUP: alt.binaries.t
2008-06-09 20:47:27,626 giganews[8] getting GROUP: alt.binaries.t
2008-06-09 20:47:27,627 giganews[2] got GROUP: alt.binaries.t
2008-06-09 20:47:27,627 giganews[2] getting GROUP: alt.binaries.t
2008-06-09 20:47:27,629 giganews[9] got GROUP: alt.binaries.t
2008-06-09 20:47:27,629 giganews[9] getting GROUP: alt.binaries.t
2008-06-09 20:47:27,631 giganews[4] got GROUP: alt.binaries.t
2008-06-09 20:47:27,631 giganews[4] getting GROUP: alt.binaries.t
2008-06-09 20:47:27,636 giganews[3] got GROUP: alt.binaries.t

Basically Hellanzb is repeatedly trying to resolve a newsgroup, but is failing.

The solution (at least for my problem) is described in this bug report. Basically there is a bug in the file:
Code:

/usr/share/python-support/hellanzb/Hellanzb/NZBLeecher/Protocol.py

where it is not cleaning the "groups" string properly. To fix it, edit that file, and below line 513, add a single line of python code that simply does "group = group.strip()". So:
Code:

$ sudo nano /usr/share/python-support/hellanzb/Hellanzb/NZBLeecher/Protocol.py

Then find the code near line 513 and change it like so:
Code:

       if not self.factory.skipGroupCmd:
            # Change group
            for group in self.currentSegment.nzbFile.groups:

                # Added to fix bug
                group = group.strip()

                # NOTE: we could get away with activating only one of the groups instead
                # of all
                if group not in self.activeGroups and group not in self.failedGroups:
                    debug(str(self) + ' getting GROUP: ' + group)
                    self.fetchGroup(group)
                    return

The above fix worked perfectly for me. Hope that helps someone else.