Import oopses: EmailAddressAlreadyTaken
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
High
|
Jeroen T. Vermeulen |
Bug Description
Similarly to bug #408528 in Soyuz, when we are importing translations from people who have not registered in Launchpad (i.e. there is no Person record for them), but who do have an account (i.e. there is Account and EmailAddress record for them), imports fail with
Traceback (most recent call last):
File "/srv/launchpad
(mail_subject, mail_body) = (
File "/srv/launchpad
errors, warnings = (
File "/srv/launchpad
file_importer = POFileImporter(
File "/srv/launchpad
self.
File "/srv/launchpad
displayname
File "/srv/launchpad
email = getUtility(
File "/srv/launchpad
raise EmailAddressAlr
EmailAddressAlr
Discussing this with Salgado, the problem is that we are using Account/Person split to indicate if someone has explicitely registered to use Launchpad or not. Yet, in Translations we do need Person records, so we need to create them anyway.
Proper, long-term fix will involve adding separate field to person records indicating whether that person is using LP or not (i.e. it was created automatically). As a short-term fix, we can add Person records with a new creation rationale like POFILEIMPORT_
To help with a test case, we have seen this with French upload at https:/
Work-around for users: modify Last-Translator to use a different email address, preferrably of the same person. Note that translations will be creditted to Last-Translator, so if you get it wrong, a wrong person might get the credit for somebody else's work.
Problem reported by Torsten Bronger (https:/
Related branches
- Abel Deuring (community): Approve (code)
-
Diff: 72 lines (+36/-15)2 files modifiedlib/lp/translations/utilities/tests/test_file_importer.py (+24/-0)
lib/lp/translations/utilities/translation_import.py (+12/-15)
tags: | added: rosetta-imports |
description: | updated |
summary: |
- Silent PO import failures: EmailAddressAlreadyTaken + Import oopses: EmailAddressAlreadyTaken |
Changed in rosetta: | |
assignee: | nobody → Jeroen T. Vermeulen (jtv) |
milestone: | none → 10.02 |
status: | Triaged → In Progress |
tags: |
added: qa-ok removed: qa-needstesting |
Changed in rosetta: | |
status: | Fix Committed → Fix Released |
Why not do the proper fix now? It seems much more reasonable to do that and just update the code once then to have to do it twice!