[Yum-devel] [PATCH 2/2] timedhosts: sanity check on dl_time
Zdeněk Pavlas
zpavlas at redhat.com
Mon May 21 07:17:00 UTC 2012
- handle the dl_time <= 0 case
- relative validity of calculated speed now depends
on dl_time instead of dl_size. (that's where the
random error is)
---
urlgrabber/grabber.py | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/urlgrabber/grabber.py b/urlgrabber/grabber.py
index be85f92..73e14aa 100644
--- a/urlgrabber/grabber.py
+++ b/urlgrabber/grabber.py
@@ -2301,11 +2301,12 @@ class _TH:
if ug_err is None:
# k1: the older, the less useful
- # k2: if it was <1MiB, don't trust it much
+ # k2: <500ms readings are less reliable
# speeds vary, use 10:1 smoothing
k1 = 2**((ts - now) / default_grabber.opts.half_life)
- k2 = min(dl_size / 1e6, 1.0) / 10
- speed = (k1 * speed + k2 * dl_size / dl_time) / (k1 + k2)
+ k2 = min(dl_time / .500, 1.0) / 10
+ if k2 > 0:
+ speed = (k1 * speed + k2 * dl_size / dl_time) / (k1 + k2)
fail = 0
elif getattr(ug_err, 'code', None) == 404:
fail = 0 # alive, at least
--
1.7.4.4
More information about the Yum-devel
mailing list