import random
import curses
import termios
+import random
from optparse import OptionParser
from StringIO import StringIO
min_age = 1
need_wait = 0
for age in ages:
- if age < min_age and age < 300:
+ if age < min_age and age <= 5:
debug('Fetcher morewait min=%d age=%d' %
(min_age, age))
need_wait = max(need_wait, min_age - age)
min_age += 3
min_age *= 1.25
+ if need_wait > 0:
+ need_wait += random.random() - 0.5
return need_wait
def _rate_limit_cache_clean(self, now):
return pa.pi
debug('PirateAboard refresh %d > %d %s' % (
age, guide, pa.name))
- imaginary = [2,6]
+ imaginary = [2,4]
else:
imaginary = [1]
wait = fetcher.need_wait(now, imaginary)
# self._v = self._vl[self._vessel]
self._date = None
self._myself = myself_pi
- self._f = file(logfn)
self._lbuf = ''
- self._progress = [0, os.fstat(self._f.fileno()).st_size]
+ self._f = file(logfn)
+ flen = os.fstat(self._f.fileno()).st_size
+ max_backlog = 500000
+ if flen > max_backlog:
+ startpos = flen - max_backlog
+ self._f.seek(startpos)
+ self._f.readline()
+ self._progress = [0, flen - self._f.tell()]
self._disembark_myself()
self._need_redisplay = False
self._lastvessel = None
track.catchup()
if track.changed():
print track
- sleep(1)
+ sleep(0.5 + 0.5 * random.random())
#----- ship management aid -----