chiark / gitweb /
Limit yoweb-scrape backlog parsing to 500K
[ypp-sc-tools.db-live.git] / yoweb-scrape
index e3a7c8c19c7b97f5e7c1e7dbb30f3418b101859a..10cc734e2df672057d13952e63d00c721230b2e1 100755 (executable)
@@ -502,9 +502,15 @@ class ChatLogTracker:
                                # 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