Duplicate uploader in package set, can't modify from API

Asked by Stéphane Graber on 2011-11-03

The DMB is now transitioning from personal upload rights to package set to using teams.
I've been doing the implementation of that, modifying all of the affected package sets.

All worked well except for the schooltool package for Ubuntu precise, here's the content of this one:
stgraber@castiana:~/data/code/ubuntu-archive-tools$ python edit_acl.py query -P schooltool -S precise
== All uploaders for package set 'schooltool' in 'precise' (owned by 'Ubuntu Developer Membership Board') ==
Archive Upload Rights for menesis: archive 'primary', package set 'schooltool' in precise
Archive Upload Rights for menesis: archive 'primary', package set 'schooltool' in precise
Archive Upload Rights for ubuntu-schooltool-dev: archive 'primary', package set 'schooltool' in precise

== All source packages in package set 'schooltool' in 'precise' ==
schooltool
schooltool.gradebook
schooltool.intervention
schooltool.lyceum.journal

So we can see that I successfully added the team (ubuntu-schooltool-dev) but the upload rights for "menesis" appear twice.
Trying to remove these, give me:
stgraber@castiana:~/data/code/ubuntu-archive-tools$ python edit_acl.py delete -p menesis -P schooltool -S precise
There was a 500 error:
NotOneError

This seems like a bug that could have happened when Precise got initialized, for now, the DMB would just like someone from LP to fix that specific package set by removing "menesis" from this package set. Thanks!

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Julian Edwards
Solved:
2011-12-05
Last query:
2011-12-05
Last reply:
2011-12-05

This question was reopened

Brad Crittenden (bac) said : #1

Stephane we'll take a look at this next week. But is it actually causing a problem?

Stéphane Graber (stgraber) said : #2

Nothing critical at the moment, though it concerns me that should the DMB want to do that, we wouldn't be able to remove this person's upload rights.

This is also making our reports very confusing as we basically have the same uploader three times now, twice directly and once through team membership.

I am working on this now. There's a duplication of data; for some odd reason two rows in the database got created at the same time - their timestamps are identical.

Ok the dupe is now gone.

Stéphane Graber (stgraber) said : #5

And the ACL update now worked fine, thanks!

Stéphane Graber (stgraber) said : #6

Thanks Julian Edwards, that solved my question.

Stéphane Graber (stgraber) said : #7

Re-opening, we just spotted the same issue in the utouch package set.

stgraber@castiana:~/data/code/ubuntu-archive-tools$ python edit_acl.py query -P utouch -S precise
== All uploaders for package set 'utouch' in 'precise' (owned by 'Ubuntu Developer Membership Board') ==
Archive Upload Rights for chasedouglas: archive 'primary', package set 'utouch' in precise
Archive Upload Rights for chasedouglas: archive 'primary', package set 'utouch' in precise
Archive Upload Rights for ubuntu-utouch-dev: archive 'primary', package set 'utouch' in precise

== All source packages in package set 'utouch' in 'precise' ==
ginn
libgrip
mtdev
mtview
utouch
utouch-compiz
utouch-evemu
utouch-frame
utouch-geis
utouch-grail
utouch-qml

stgraber@castiana:~/data/code/ubuntu-archive-tools$ python edit_acl.py delete -P utouch -S precise -p chasedouglas
There was a 500 error:
NotOneError

Can someone with DB power please remove both entries for chasedouglas from this package set?
He's also part of the ubuntu-utouch-dev team so he'll keep his upload rights through that.

Can you maybe run a check on all the package sets to find other cases like this and fix them all at once? I don't know if they're all affected but pretty much all the ones I wanted to touch this cycle had the bug.

Thanks!

I just did a query on the database and only see a single permission for chasedouglas for utouch in precise. Is this still a problem?

Stéphane Graber (stgraber) said : #9

Yep, it's definitely still a problem, I still see the duplicate and still can't remove it:

stgraber@castiana:~/data/code/ubuntu-archive-tools$ python edit_acl.py query -P utouch -S precise
== All uploaders for package set 'utouch' in 'precise' (owned by 'Ubuntu Developer Membership Board') ==
Archive Upload Rights for chasedouglas: archive 'primary', package set 'utouch' in precise
Archive Upload Rights for chasedouglas: archive 'primary', package set 'utouch' in precise
Archive Upload Rights for ubuntu-utouch-dev: archive 'primary', package set 'utouch' in precise

== All source packages in package set 'utouch' in 'precise' ==
ginn
libgrip
mtdev
mtview
utouch
utouch-compiz
utouch-evemu
utouch-frame
utouch-geis
utouch-grail
utouch-qml
stgraber@castiana:~/data/code/ubuntu-archive-tools$ python edit_acl.py delete -P utouch -S precise -p chasedouglas
There was a 500 error:
NotOneError

D'oh, my bad, I was looking at oneiric's packageset. It's now fixed!

Stéphane Graber (stgraber) said : #11

Thanks Julian Edwards, that solved my question.