- 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
# 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',
'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',
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."""
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)