Add another table to store linked_revs
We need to create fake revisions when packages were touched that are linked themselves
This commit is contained in:
@@ -25,7 +25,7 @@ class DBRevision:
|
||||
self._hash = None
|
||||
|
||||
def __str__(self):
|
||||
return f"Rev {self.project}/{self.rev} Md5 {self.unexpanded_srcmd5} {self.commit_time} {self.userid} {self.request_number}"
|
||||
return f"Rev {self.project}/{self.package}/{self.rev} Md5 {self.unexpanded_srcmd5} {self.commit_time} {self.userid} {self.request_number}"
|
||||
|
||||
def __repr__(self):
|
||||
return f"[{self.__str__()}]"
|
||||
@@ -119,6 +119,8 @@ class DBRevision:
|
||||
return ret
|
||||
|
||||
def linked_rev(self, db):
|
||||
if self.broken:
|
||||
return None
|
||||
with db.cursor() as cur:
|
||||
cur.execute(
|
||||
"SELECT project,package FROM links where revision_id=%s", (self.dbid,)
|
||||
@@ -134,6 +136,8 @@ class DBRevision:
|
||||
revisions = [DBRevision(row) for row in cur.fetchall()]
|
||||
if revisions:
|
||||
return revisions[0]
|
||||
else:
|
||||
self.set_broken(db)
|
||||
return None
|
||||
|
||||
def set_broken(self, db):
|
||||
|
Reference in New Issue
Block a user