Last modified: 2013-04-24 12:19:32 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T45526, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 43526 - Invalidate the nscd group cache of instances in a project when a user is added or removed
Invalidate the nscd group cache of instances in a project when a user is adde...
Status: NEW
Product: Wikimedia Labs
Classification: Unclassified
Infrastructure (Other open bugs)
unspecified
All All
: Low normal
: ---
Assigned To: Ryan Lane
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-12-30 20:42 UTC by Ryan Lane
Modified: 2013-04-24 12:19 UTC (History)
4 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Ryan Lane 2012-12-30 20:42:56 UTC
If a user tries to access a project before they are a member, they'll be stored in the negative nscd cache for group. When the user is added to the project, if they try to access the instance before the negative cache expires, they'll be rejected.

Using salt, we should trigger an nscd group cache invalidation for all instances in a project when a user is added or removed from the project.
Comment 1 Ori Livneh 2012-12-30 23:11:49 UTC
Where should the invalidation be triggered?

Options:
1) the 'if ( $success ) { .. }' block in addMember(), deleteMember() and possibly setMembers() methods on OpenStackNovaProjectGroup.php
2) Some wrapper around LdapAuthenticationPlugin::ldap_modify
Thoughts?

Is there any existing integration between salt and OpenStackManager that I could check out?
Comment 2 Ryan Lane 2013-01-02 01:43:43 UTC
There's no integration yet. Either you'd need to shell out, or get salt-api working.
Comment 3 Ori Livneh 2013-01-02 07:31:08 UTC
salt-api is currently 'pre-alpha'. The code doesn't look like anything substantial yet.

The Salt wire protocol is MessagePack on top of ZeroMQ. Both MessagePack and ZeroMQ have good PHP bindings, so perhaps writing a PHP-based salt client wouldn't be too hard.

Alternately we could implement a simple MediaWiki-Salt bridge, perhaps using UDP / wfDebug.

Both approaches would be overkill if this was an isolated need. If there was better Salt / MediaWiki integration, do you expect to have lots of uses for it?

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links