ask smaller header chunks from server. 200 lines max
This commit is contained in:
parent
4b55e154bb
commit
9b6281e83d
1 changed files with 23 additions and 2 deletions
|
|
@ -65,8 +65,8 @@ def get_articles(cachedir=false)
|
|||
for server in @connections.keys
|
||||
print "reading articles from server: #{server}\n"
|
||||
range = Set::IntSpan.new("#{@connections[server]["first"]}-#{@connections[server]["last"]}")
|
||||
rangelist = range.diff(@connections[server]["skip_ids"]).run_list
|
||||
print "rangelist: #{rangelist}\n" if Debuglevel >1
|
||||
rangelist = rechunk_runlist(range.diff(@connections[server]["skip_ids"]).run_list)
|
||||
print "rangelist: #{rangelist}\n"# if Debuglevel >1
|
||||
print "rangelist: #{rangelist.type.to_s}\n" if Debuglevel >1
|
||||
print "rangelsit elements: #{range.diff(@connections[server]["skip_ids"]).elements}\n" if Debuglevel >1
|
||||
unless rangelist == nil or rangelist =~ /^$/
|
||||
|
|
@ -830,6 +830,27 @@ def ward_sort(a, b)
|
|||
return 0
|
||||
end
|
||||
|
||||
def rechunk_runlist(runlist)
|
||||
blalist = runlist.split(',')
|
||||
blalist.collect!{|x|
|
||||
result = ""
|
||||
if x =~ /(.*)-(.*)/
|
||||
a = $1
|
||||
while ($2.to_i - a.to_i) > 200
|
||||
result += "#{a}-#{a.to_i+199},"
|
||||
a = a.to_i + 200
|
||||
end
|
||||
result += "#{a}-#{$2}"
|
||||
else
|
||||
x
|
||||
end
|
||||
blup = blalist.join(",")
|
||||
return blup
|
||||
}
|
||||
|
||||
return
|
||||
end
|
||||
|
||||
def quit
|
||||
for server in @connections.keys
|
||||
@connections[server]["nntp"].quit
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue