OOPS using +adminteammerge

Bug #156207 reported by Diogo Matsubara
48
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
High
Brad Crittenden

Bug Description

1. Open https://launchpad.dev/people/+adminteammerge
2. Fill in "Duplicated team": name21
3. Fill in "Target team": ubuntu-team
4. Click Merge
5. Hit the browser's back button
6. Click Merge
7. OOPS-661S27 KeyError: 'dupe_person'

Recently: OOPS-1068ED165, OOPS-1068ED166, OOPS-1068EB187, OOPS-1105ED117, OOPS-1105ED6

Changed in launchpad:
status: New → Confirmed
Changed in launchpad:
importance: Undecided → Wishlist
Revision history for this message
Tom Haddon (mthaddon) wrote :
Revision history for this message
Christian Reis (kiko) wrote :

You get this even if you type in the name of a non-existent person in the dupe_person input box, btw.

Revision history for this message
Diogo Matsubara (matsubara) wrote :

Tom, the problem here is that you're trying to merge a inactive person into a team. That should not be possible. Clearly the form should tell you that instead of OOPSing.

Revision history for this message
Diogo Matsubara (matsubara) wrote :

Increasing the importance.

Changed in launchpad:
importance: Wishlist → Low
Revision history for this message
Joey Stanford (joey) wrote :

kiko said "it happens when the person in the dupe textbox doesn't exist. that page lacks a validator"

Ursula Junque (ursinha)
description: updated
Revision history for this message
Diogo Matsubara (matsubara) wrote :

Tom just triggered OOPS-1069EC156 while trying to duplicate a private team into ~registry.

The workaround was to make the team public and then merge.

Curtis Hovey (sinzui)
Changed in launchpad-registry:
status: Confirmed → Triaged
Ursula Junque (ursinha)
description: updated
Revision history for this message
Christian Reis (kiko) wrote :

Joey may have misparaphrased me or I may have screwed it up but the reality is that this is a generic error that happens for any situation where the team can't be merged -- maybe the bug here is that there is no error message to tell us why the merge failed.

Revision history for this message
Guilherme Salgado (salgado) wrote :

We see this error because the vocabulary used on +adminteammerge only includes valid teams, but the validate() method of AdminTeamMergeView ignores that fact and assumes data['dupe_person'] will always exist (not true when the dupe team is not considered valid; either unclaimed, private or already merged).

If we just changed the validate() method to do nothing when 'dupe_person' is not in data, we'd get a (probably meaningless) error message rather than an OOPS.

The correct fix, though, would be to write a new vocabulary including private and unclaimed teams, to be used on this page.

summary: - OOPS merging an already merged team
+ OOPS using +adminteammerge
Curtis Hovey (sinzui)
Changed in launchpad-registry:
assignee: nobody → Brad Crittenden (bac)
Brad Crittenden (bac)
Changed in launchpad-registry:
importance: Low → High
milestone: none → 2.2.7
status: Triaged → In Progress
Revision history for this message
Brad Crittenden (bac) wrote :

r8787

Changed in launchpad-registry:
status: In Progress → Fix Committed
Revision history for this message
Curtis Hovey (sinzui) wrote : Bug 156207 Fix released

Fixed released in Launchpad sinzui.

Changed in launchpad-registry:
status: Fix Committed → Fix Released
Revision history for this message
Steve McInerney (spm) wrote :

Still not fixed; or bug 372519 isn't a duplicate.

https://answers.edge.launchpad.net/launchpad/+question/74409 is the request.
~debian-ocaml-maint appears to be a person record (vs a team)
wants to be merged into ~ocaml-maint which is a team.

No longers OOPS', but "There is 1 error. Constraint not satisfied." isn't an obvious message as to what the problem is.
Tho the drop down box does help a little and is a nice touch.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.