tahoe-lafs/src/allmydata/immutable/downloader
Brian Warner a4068dd1e0 immutable/downloader/fetcher.py: fix diversity bug in server-response handling
When blocks terminate (either COMPLETE or CORRUPT/DEAD/BADSEGNUM), the
_shares_from_server dict was being popped incorrectly (using shnum as the
index instead of serverid). I'm still thinking through the consequences of
this bug. It was probably benign and really hard to detect. I think it would
cause us to incorrectly believe that we're pulling too many shares from a
server, and thus prefer a different server rather than asking for a second
share from the first server. The diversity code is intended to spread out the
number of shares simultaneously being requested from each server, but with
this bug, it might be spreading out the total number of shares requested at
all, not just simultaneously. (note that SegmentFetcher is scoped to a single
segment, so the effect doesn't last very long).
2011-02-26 19:11:53 -07:00
..
__init__.py Rewrite immutable downloader (#798). This patch adds the new downloader itself. 2010-08-04 00:26:29 -07:00
common.py Rewrite immutable downloader (#798). This patch adds the new downloader itself. 2010-08-04 00:26:29 -07:00
fetcher.py immutable/downloader/fetcher.py: fix diversity bug in server-response handling 2011-02-26 19:11:53 -07:00
finder.py immutable/downloader/share.py: reduce get_serverid(), one left, update ext deps 2011-02-26 19:11:50 -07:00
node.py fix #1223, crash+inefficiency during repair due to read overrun 2010-10-29 01:20:36 -07:00
segmentation.py downloader.Segmentation: unregisterProducer when asked to stopProducing, this 2010-08-06 00:07:05 -07:00
share.py immutable/downloader/share.py: reduce get_serverid(), one left, update ext deps 2011-02-26 19:11:50 -07:00
status.py download status: fix bug from me committing the wrong one of François's #1172 patches, fixes #1172 2010-09-02 09:15:41 -07:00