in treeherder/perf/models.py [0:0]
def save(self, *args, update_fields=None, **kwargs):
if self.bug_number is not None and self.bug_number != self.__prev_bug_number:
self.bug_updated = datetime.now()
if update_fields is not None:
update_fields = {"bug_updated"}.union(update_fields)
triage_due = calculate_time_to(self.created, TRIAGE_DAYS)
# created is initially PerformanceDatum.push_timestamp and due to a potential race condition
# triage_due_date is not always calculated after the real created date
if self.triage_due_date != triage_due:
self.triage_due_date = triage_due
if update_fields is not None:
update_fields = {"triage_due_date"}.union(update_fields)
bug_due = calculate_time_to(self.created, BUG_DAYS)
if self.bug_due_date != bug_due:
self.bug_due_date = bug_due
if update_fields is not None:
update_fields = {"bug_due_date"}.union(update_fields)
if not self.original_push:
self.original_push = self.push
if not self.original_prev_push:
self.original_prev_push = self.prev_push
super().save(*args, update_fields=update_fields, **kwargs)
self.__prev_bug_number = self.bug_number