Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Blog Technique de Romelard Fabrice

Les dernières Actualités de Romelard Fabrice (Alias fabrice69 ou F___) principalement autour des technologies Microsoft

Actualités

  • Toutes les actualités et informations sur les technologies Microsoft principalement autour de .NET et SQL Server
SharePoint : Migration douloureuse WSS V2 vers WSS V3

image

Nous devons migrer notre plateforme WSS V2 vers WSS V3 dans le cadre de l'évolution de nos fermes SharePoint.

La ferme WSS V2 contenait 132 Collections de sites et le fait de construire une nouvelle ferme impose la migration par DB, couplée à la création d'un template spécifique, ceci a été traîté dans les articles suivant :

Cette mise à jour s'est déroulée parfaitement pour 131 collections de sites et donc seule une collection m'a posé de gros problèmes, parmis lesquelles :

  • Pages unghosted (mais qui apres recherches et utilisation de GhostHunter n'était pas du tout unghosted)
  • Listes "scrubbed" (message d'erreur "The following list has not been scrubbed: ID=xxxx), qui correspond selon Microsoft à des orphelins (mais que le databaserepair ne trouve pas dans mon cas)

Après des heures passées à essayer de comprendre la source du problème et la raison des erreurs dans le addcontentDB (migration par DB) et sur les conseil d'un ami dont je ne citerai pas le nom (pour sa sécurité ;)), j'ai pris la solution brutale (j'avais déjà commencé à tripatouiller la base de données) :

image 

On trouve donc dans la classe SCAN les variables locales stockant les requêtes SQL traquant les erreurs en base de données :

  • private static string GhostedPagePerWebSqlQuery = "\r\n SELECT dbo.Docs.DirName, dbo.Docs.LeafName\r\n FROM dbo.Docs\r\n WHERE (dbo.Docs.Type = 0) AND (dbo.Docs.SetupPath IS NOT NULL) AND (dbo.Docs.SiteId = @SiteId) AND (dbo.Docs.DocFlags & 64 = 64) AND (dbo.Docs.DirName LIKE @WebUrl) AND (dbo.Docs.WebId = @WebId)";
  • private static string sqlstrListsNotScrubbed = "\r\n SELECT\r\n tp_Id, tp_Title, FullUrl\r\n FROM\r\n Lists\r\n LEFT OUTER JOIN \r\n Webs\r\n ON\r\n Lists.tp_WebId = Webs.Id\r\n WHERE\r\n (tp_Flags & 0x1000000) != 0x1000000\r\n ";

Ceci m'a permis de rechercher les erreurs dans la ContentDB provoquant l'arrêt du PRESCAN et surtout l'impossibilité de réaliser l'import.

Une petite série de requête UPDATE (que je ne vous donnerai pas :)) plus tard, j'ai pu réaliser ma commande ADDContentDB

Il faut tout de même noter une petite requête de mise à jour qui n'est pas dans ce PRESCAN :

UPDATE dbo.Sites
SET
bitflags = '262144'
WHERE bitflags NOT LIKE '262144'

Afin de déclarer vos sites comme Upgradable.

Bref quelques heures plus tard et des cheveux en moins, toutes mes collections sont migrées et il ne me reste plus que le fignolage à effectuer.

Romelard Fabrice [MVP]

Technorati Tags: ,,
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: mercredi 9 avril 2008 18:01 par ROMELARD Fabrice
Classé sous : , ,

Commentaires

themit a dit :

Bien content que tout ce soit bien solutionné

Cependant tu en as de bien byzarre relation

Passé au reflector l'outils de Prescan pour identifier les clés de DB pour mieux la nettoyer pour relancer le process de migration ...

Ben voyons, il doit être au stade ultime de l'alienation SharePointesque.

Penses au moins à lui payer une tournée de Bailey's glacon au Summit de Seattle la semaine prochaine

PS : frais le verre comme de bien entendu

;)

# avril 9, 2008 23:47

ROMELARD Fabrice a dit :

Ben en fait oui et non.

Oui ca m'a bien permis de faire le ADDContentDB avec succes, mais non car le site était inutilisable.

En fait, ce site a été créé sur une autre ferme WSS V2 puis simplement transféré par STSADM Backup/restore.

Sauf que les liste ont été créé avec des modeles qui étaient sur cette première ferme qui nexiste plus aujourdhui et n'ont pas été transférées sur la seconde ferme.

Or pour la migration, ce modele de liste original était obligatoire pour lui fournir un mapping adapté.

Dans le cas contraire, il fait nimporte quoi et c'est bien ce qu'il a fait.

Les listes deviennent inutilisables, ineffacables et le site aussi.

J'ai donc du recréer manuellement tout le site et faire un copier coller comme jai pu des données d'origine vers le nouveau site.

Morale de l'histoire :

NE FAITES PAS DE LIST TEMPLATE POUR RIEN ET SURTOUT CONSERVEZ LES BIEN

Ca vous évitera juste les 4 heures de copier-coller a la c..

Fabrice

# avril 10, 2008 01:42

themit a dit :

hum hum

Et pour le bailey's ?

# avril 10, 2008 22:52

ROMELARD Fabrice a dit :

A-t'on vraiment besoin de se poser la question du quand ?

On devrait plutot se poser la question du Ou va t'on prendre ce fameux attendu Baileys ;)

Fabrice

# avril 10, 2008 23:51
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- TechDays Paris 2010 : La BI dans SharePoint 2010 par Blog Technique de Romelard Fabrice le il y a 1 heure et 9 minutes

- TechDays Paris 2010 : Déploiement de nouvelles technologies – Retour d’expérience par l’informatique de Microsoft par Blog Technique de Romelard Fabrice le il y a 2 heures et 36 minutes

- TechDays Paris 2010 : Plan de migration vers SharePoint 2010 par Blog Technique de Romelard Fabrice le il y a 6 heures et 18 minutes

- TechDays Paris 2010 : La pleinière du second jour par Blog Technique de Romelard Fabrice le il y a 7 heures et 23 minutes

- Visual Studio 2010 and .NET Framework 4 Release Candidate now available par Matthieu MEZIL le il y a 10 heures et 29 minutes

- Création d’une base de donnée sous SQL Azure par Le Blog (Vert) d'Arnaud JUND le il y a 11 heures et 26 minutes

- TechDays Paris 2010 : Les Services d’applications dans SharePoint 2010 par Blog Technique de Romelard Fabrice le il y a 21 heures et 25 minutes

- TechDays Paris 2010 : La GED et SharePoint 2010 par Blog Technique de Romelard Fabrice le 02-08-2010, 16:54

- TechDays Paris 2010 : SharePoint 2010 et Les réseaux sociaux par Blog Technique de Romelard Fabrice le 02-08-2010, 15:40

- TechDays Paris 2010 : SharePoint 2010 – Description et nouveautés par Blog Technique de Romelard Fabrice le 02-08-2010, 14:33