On Tuesday 07 August 2007, Junichi Uekawa wrote: > in lib/debian/bts.rb there is a constant > > ParseStep = 200 > > This is the value which determines how many bugs to process at a time. > Reducing this number will make things slow, and it should really be > determined dynamically based on available memory, but it's currently > defined static. > > If you can tweak this number and find out if this improves the > situation for you, it will be a source of motivation for me to make > this variable dynamic (or configurable).
Hi Junichi,
I tried with multiple numbers - 100, 50, 10.
No luck, none of them helped.
FYI, this issue is also reproducible on Debian GNU/kFreeBSD running under a
separate VM with 256M of RAM.
So the swapping issue should stay valid or not is a difficult thing to say, at
least for BSDs.
I looked into bts.rb
ParseStep = 200
def parse(pkgs, severities = ["critical", "grave"])
require 'debian/btssoap'
soap = Debian::BTSSOAP::Soap.new(@host, @port)
sa = Debian::BTSSOAP::StringArray.new
bugs = Debian::Bugs.new
reqbugs = soap.get_bugs('severity', severities, 'package', pkgs)
# the total number of bugs
max = reqbugs.length
# progressed amount
offset_i = 0
# process each bug number and get contents, in bach of ParseStep
reqbugs.each { |bug|
sa << bug
if sa.length > ParseStep
soap.get_status(sa).each { |b| bugs << b }
offset_i += sa.length
sa = Debian::BTSSOAP::StringArray.new
yield "#{((offset_i).to_f*100/max.to_f).to_i}%"
As I had mentioned in my earlier posts, this issue is only seen when the
number of packages passed is too high. In both the cases for me, the meta
package being installed was xserver-xorg which led to installation of 41
packages.
If I lower down the number of packages, thing will work.
So maybe you could try to look into ways to cut down one shot execution of
Parsing all packages. If the number of packages passed is too high (say
packages > 15), process them in order.
I think this should be the cause because lower number of packages passed
doesn't create trouble for apt-listbug on other platforms.
# process each bug number and get contents, in bach of ParseStep
BTW, I couldn't make out the meaning of this comment. Are you talking
about "batch" or "back" ?
Ritesh
--
Ritesh Raj Sarraf
RESEARCHUT - http://www.researchut.com
"Necessity is the mother of invention."
signature.asc
Description: This is a digitally signed message part.

