From 8e5874b77f6b3d6e008c60001b5f49420e0b404b Mon Sep 17 00:00:00 2001 From: Cameron Dale Date: Mon, 21 Apr 2008 12:05:56 -0700 Subject: [PATCH] Conf time parser works with floats, and lengthened DHT hash expiry to 3 hours. --- TODO | 1 - apt_p2p/apt_p2p_conf.py | 14 +++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/TODO b/TODO index cfb6561..8f0265b 100644 --- a/TODO +++ b/TODO @@ -4,7 +4,6 @@ Some last few things to do before release. - DB should not always restat files (especially for expired hashes) - remove missing files at startup (in DB's removeUntracked) - when files modtime but not size changes, rehash them to be sure -- lengthen the expiry time for DHT entries - remove files from the peer's download cache - update the modtime of files downloaded from peers - also set the Last-Modified header for the return to Apt diff --git a/apt_p2p/apt_p2p_conf.py b/apt_p2p/apt_p2p_conf.py index 3f17473..f09588f 100644 --- a/apt_p2p/apt_p2p_conf.py +++ b/apt_p2p/apt_p2p_conf.py @@ -71,7 +71,7 @@ DEFAULTS = { # Refresh the DHT keys after this much time has passed. # This should be a time slightly less than the DHT's KEY_EXPIRE value. - 'KEY_REFRESH': '57m', + 'KEY_REFRESH': '2.5h', # The user name to try and run as (leave blank to run as current user) 'USERNAME': 'apt-p2p', @@ -121,7 +121,7 @@ DHT_DEFAULTS = { 'BUCKET_STALENESS': '1h', # one hour # expire entries older than this - 'KEY_EXPIRE': '1h', # 60 minutes + 'KEY_EXPIRE': '3h', # 3 hours # whether to spew info about the requests/responses in the protocol 'SPEW': 'no', @@ -151,7 +151,7 @@ class AptP2PConfigParser(SafeConfigParser): if suffix in self.time_multipliers.keys(): mult = self.time_multipliers[suffix] value = value[:-1] - return int(value)*mult + return int(float(value)*mult) def getstring(self, section, option): """Read the config parameter as a string.""" @@ -197,6 +197,14 @@ class TestConfigParser(unittest.TestCase): config.set('DEFAULT', 'time_tester_4', '37s') self.failUnless(config.gettime('DEFAULT', 'time_tester_4') == 37) + def test_floating_time(self): + config.set('DEFAULT', 'time_float_tester_1', '2.5d') + self.failUnless(config.gettime('DEFAULT', 'time_float_tester_1') == int(2.5*86400)) + config.set('DEFAULT', 'time_float_tester_2', '0.5h') + self.failUnless(config.gettime('DEFAULT', 'time_float_tester_2') == int(0.5*3600)) + config.set('DEFAULT', 'time_float_tester_3', '4.3333m') + self.failUnless(config.gettime('DEFAULT', 'time_float_tester_3') == int(4.3333*60)) + def test_string(self): config.set('DEFAULT', 'string_test', 'foobar') self.failUnless(type(config.getstring('DEFAULT', 'string_test')) == str) -- 2.39.2