Andrew Donnellan <andrew.donnel...@au1.ibm.com> writes: > On 22/02/18 01:17, Daniel Axtens wrote: >> Analysis of SQL statements showed that when parsing an email, the row >> for the Person who sent the email was always getting updated. This is >> because the test for updating it only checks if the incoming mail has >> *a* name attached to the email address, and not if it has a new name. >> Django is not smart enough to figure that out, and so unconditionally >> UPDATEs the model when asked to save. >> >> Give it a hand - only update the model and save it if the new name is >> in fact different. >> >> Signed-off-by: Daniel Axtens <d...@axtens.net> > > Reviewed-by: Andrew Donnellan <andrew.donnel...@au1.ibm.com> > > Though, just the != test should be sufficient here without the not-null test
Wouldn't that mean a new null name would overwrite a previously saved name? Regards, Daniel > >> --- >> patchwork/parser.py | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/patchwork/parser.py b/patchwork/parser.py >> index 1f3b3dd8901f..3d40b74375e0 100644 >> --- a/patchwork/parser.py >> +++ b/patchwork/parser.py >> @@ -349,7 +349,7 @@ def get_or_create_author(mail): >> # we lost the race to create the person >> person = Person.objects.get(email__iexact=email) >> >> - if name: # use the latest provided name >> + if name and name != person.name: # use the latest provided name >> person.name = name >> person.save() >> > > -- > Andrew Donnellan OzLabs, ADL Canberra > andrew.donnel...@au1.ibm.com IBM Australia Limited _______________________________________________ Patchwork mailing list Patchwork@lists.ozlabs.org https://lists.ozlabs.org/listinfo/patchwork