sakaiproject/nakamura — pull request #849 by mrvisser (2012-06-20 14:00:59+00:00)
Title: KERN-2887 Do not copy activities to "routed" locations. Instead store ro...

...utes in a field on the activity and index them for searching.

When copying the activity nodes to multiple locations, this adds additional stress to storage and the indexer, inflating the number of writes that are performed. The more connections users have, the greater the impact of this change.

The approach being used for this is:

1. There will no longer be sakai/activity-post items created, I believe this is consistent with Chris Tweney's work on the activities refactoring.
2. When a new activity is created, rather than "copy" them to multiple areas (i.e., to the feeds of all connections), those "routes" (paths) will be stored on a sakai:routes node beneath the activity
3. The sakai:routes node will be locked down to admin-only to avoid exposing home directories and subsequently user id's
4. The users to which the activity should be routed will be granted 'read' access on the activity node that is created
5. For migration, all existing sakai/activity nodes will be given a single "route", which is its own location, so that it may be picked up in the solr index and still returned. Note that no "sakai/activity-post" content will be deleted. they will no longer be used.