def save()

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