Thursday, July 28, 2011

07-10: Some permissions are not moved during synchronization

For 07-10 scenario site and lists permissions are synchronized, however there are cases when they are not migrated:

  • Deleted user permissions
  • User agged to a site group
Why it's happening:
It happens due to synchronization mechanism which is based on token received from Microsoft Content Migration API. The content migration API defines whetehr there were any changes with source site or list. If there were changes, they are added to the token and MMSP moves them during sync. But adding a user to a group is not detected as a change with the site (it's very strange, but it's how Microsoft Content Migration API works). So, the user is not moved.
However, if you add a user directly to the site permissions (not to a group), the site is detected as modified and is synchronized. That means, all it's changes will be moved, even users added to the groups before.

Tuesday, July 26, 2011

07-10: Only groups that have permissions for the site are migrated

During 07-10 migration MMSP preserves groups that have permissions for the site as well as the group owner.
Example:
Source site has the following groups:
The following groups has permissions for the site:
The group Owner is the following group:


When MMSP migrates the site the following groups are created on target:

Tuesday, July 19, 2011

Firewall configuration for 07-07/10-10 migration

Adding a farm requires the same configuration as described in Help.
For 07-07 migration different firewall configuration is required:

1. When creating a migration job the BrowserBroker service connnects to the remote BrowserAgent service.
Their ports can be found in the "server.socket_port" variable in the following files:
Quest Software\Migration Manager for SharePoint\Web Interface\SharePoint Browser\SPInfo.conf - for BrowserAgent port
Quest Software\Migration Manager for SharePoint\Web Interface\SharePoint Browser\SPInfoBroker.conf - for BrowserBroker port.

So, from a server with console the outbond connection for the Broker service should be allowed, on a server without console - inbound connection for the Agent service.

2. Source and Target serivces on the corresponding servers should have access to Repository database:

Outbound connections for pythonservice.exe should be allowed on both servers, SQL ports should be opened on the server wher Repository database is located.

3. Source service creates shared folder on the source server and exports content to the folder, target service connects to the folder remotely and uses it foe importing:

Outbound connection from the target server should be allowed for the pythonservice.exe and inbound connections should be allowed on the source server for the shared folder (SMB port 445)

Monday, July 18, 2011

03-07/10: List views are broken after migration.

Issue:
A source 2003 document library view has been modified by a user. Administrator performs the library migration and does not see error messages. But when the user goes to the target 2007 document library he does not see any objects there (the view is empty or contains an error message)
Example:
List views are stored in file system but the view changes are stored in database. When MM performs migration he applies changes incorrectly.
 
For example MM incorrectly migrates view in the following scenario:
You have Explorer view set as default view for the document library. When a user adds a new column the “Add to default view” option is checked and default view is modified. When administrator migrates the document library, the Explorer view is broken. It displays one column and it looks like there are no documents in the target document library.
Note: There might be other scenarios how to modify source view that MM migrates them incorrectly.
 
How to fix:
There are the following solutions: 
1. You can delete the broken view and re-create it on target site
2. You can disable view migration of a particular type of list. In this case MM will not migrate the list views. Only default list views will be created on target site.
To disable the view migration:

1. Open the "Quest Software\Migration Manager for SharePoint\MM4SP.Paging.CmdProcessor.xml" file
2. There is the following query in the "get_views_of_list":

SELECT *,page.LeafName as ViewUrl FROM [{0}].[dbo].WebParts wp
JOIN [{0}].[dbo].Docs page on page.Id = wp.tp_PageUrlID
JOIN [{0}].[dbo].Lists lists on wp.tp_ListID = lists.tp_ID
WHERE wp.tp_ListId = '{1}' and (tp_DisplayName is not null) and tp_DisplayName <> '' and wp.tp_WebPartTypeId = '7FBF9A80-8AE1-FA7E-9C51-30A786D33155' and (wp.tp_View is not null) and (lists.tp_ServerTemplate not in (106, 102))


You could add list types in addition to 102 and 106 to exclude their views.
There is a list of SharePoint list templates: http://sharepointkb.wordpress.com/2008/08/26/sharepoint-list-template-ids-registrationids-list-template-type-ids/

3. Once you added the required types, save the file and restart Source service.

If you have two agent deployment the changes should be done on both servers. 

07-10: Overview view contains only 100 objects

Issue:

After performing 07-10 migration, all items for a survey list have been migrated, however when you switch to the Overview view you see only 100 items.

Workaround:


1. Open the Overview.aspx for the target survey in SharePoint Designer
2. Switch to the Code mode
3. Delete the following entry:
<RowLimit Paged="FALSE">100</RowLimit>
Make sure there is no extra line left in the file.
4. Save the aspx.