diff --git a/trac/versioncontrol/cache.py b/trac/versioncontrol/cache.py
|
a
|
b
|
|
| 93 | 93 | self.reponame, str(cset.rev))) |
| 94 | 94 | db.commit() |
| 95 | 95 | |
| 96 | | def sync(self, feedback=None): |
| 97 | | db = self.getdb() |
| | 96 | # @cached? => move to RepositoryManager |
| | 97 | def metadata(self, db=None): |
| | 98 | if not db: |
| | 99 | db = self.getdb() |
| 98 | 100 | cursor = db.cursor() |
| 99 | 101 | cursor.execute("SELECT name, value FROM repository " |
| 100 | 102 | "WHERE id=%%s AND name IN (%s)" % |
| … |
… |
|
| 103 | 105 | metadata = {} |
| 104 | 106 | for name, value in cursor: |
| 105 | 107 | metadata[name] = value |
| | 108 | return metadata |
| | 109 | |
| | 110 | def sync(self, feedback=None): |
| | 111 | db = self.getdb() |
| | 112 | cursor = db.cursor() |
| | 113 | metadata = self.metadata(db) |
| 106 | 114 | |
| 107 | 115 | # -- check that we're populating the cache for the correct repository |
| 108 | 116 | repository_dir = metadata.get(CACHE_REPOSITORY_DIR) |
| … |
… |
|
| 261 | 269 | |
| 262 | 270 | def get_youngest_rev(self): |
| 263 | 271 | if not hasattr(self, 'youngest'): |
| 264 | | db = self.getdb() |
| 265 | | cursor = db.cursor() |
| 266 | | cursor.execute("SELECT MAX(" + db.cast('rev', 'int') + ") " |
| 267 | | "FROM revision WHERE repos=%s", (self.reponame,)) |
| 268 | | for rev, in cursor: |
| 269 | | self.youngest = str(rev) |
| | 272 | metadata = self.metadata() |
| | 273 | self.youngest = metadata.get(CACHE_YOUNGEST_REV) |
| 270 | 274 | return self.youngest |
| 271 | 275 | |
| 272 | 276 | def previous_rev(self, rev, path=''): |