Résoudre les erreurs de migration
L’outil de migration de données signale les erreurs que vous devez corriger avant d’importer dans Azure DevOps Services. Cet article décrit les avertissements et erreurs les plus courants que vous pouvez recevoir lorsque vous préparez l’importation. Après avoir corrigé chaque erreur, réexécutez la commande migrator validate pour confirmer que la résolution est effectuée.
Pour plus d’informations, reportez-vous à la section FAQ à la fin de cet article.
Résoudre les avertissements liés à la taille
Les collections extra-volumineuses peuvent générer l’un des messages suivants après l’exécution de l’outil de migration de données. Si vous recevez l’un de ces avertissements ou erreurs, nous vous recommandons d’essayer de réduire la taille de votre base de données.
Taille de base de données par rapport à la taille recommandée
L’avertissement suivant signifie que vous devez utiliser la méthode de machine virtuelle SQL Azure pour terminer votre migration. Une fois qu’une base de données atteint une certaine taille, il devient plus rapide de configurer une machine virtuelle SQL Azure pour effectuer la migration vers Azure DevOps Services. Pour configurer la machine virtuelle et terminer votre migration, suivez les instructions liées à partir du message d’avertissement.
The database is currently {Database Size}GBs. This is above the recommended size of {DACPAC Size Limit}GBs to use the DACPAC migration method. Please see the following page to learn how to migration using a SQL Azure VM: https://aka.ms/AzureDevOpsImportLargeCollection
Cet avertissement NE signifie PAS que votre collection est trop volumineuse pour la migration.
Taille de table par rapport à la taille recommandée
Similaire à l’avertissement précédent, l’avertissement suivant signifie que vous devez utiliser la méthode de machine virtuelle SQL Azure pour terminer la migration. Pour configurer la machine virtuelle et terminer votre migration, suivez les instructions liées à partir du message d’avertissement.
The largest table size is currently {Table size}GBs. This is above the recommended size of {Size limit}GBs to use the DACPAC migration method. Please see the following page to learn how to migration using a SQL Azure VM: https://aka.ms/AzureDevOpsImportLargeCollection
Cet avertissement NE signifie PAS que votre collection est trop volumineuse pour la migration.
Taille des métadonnées de base de données par rapport à la taille recommandée
L’avertissement suivant signifie que votre base de données approche de la limite pour la taille totale des métadonnées. La taille des métadonnées fait référence à la taille de votre base de données sans inclure de fichiers, de code et d’autres données binaires. Nous vous recommandons de réduire la taille de votre base de données avant la migration. La réduction de la taille offre l’autre avantage d’accélérer votre migration.
The database metadata size is currently {Metadata Size}GBs. This is above the recommended size of {Warning Size}GBs. It's recommended that you consider cleaning up older data as described in [Cleaning up old data](/azure/devops/server/upgrade/clean-up-data).
L'avertissement NE SIGNIFIE PAS que votre collection est trop volumineuse pour être migrée, mais que la taille de ses métadonnées est supérieure à celle de la plupart des autres bases de données.
Taille des métadonnées de la base de données dépasse la taille maximale prise en charge
Contrairement aux avertissements précédents, l’erreur suivante VA vous empêcher de progresser avec votre migration.
Il indique que le volume de métadonnées de votre collection est trop volumineux. Pour procéder à la migration, vous devez réduire la taille en dessous de la limite indiquée.
The database metadata size is currently {Metadata Size}GBs. This is above the maximum supported size of {Metadata Limit}GBs.
Résoudre les avertissements liés au classement
Les avertissements relatifs à la collation concernent la collation de la base de données de votre collection. Les classements contrôlent la façon dont les valeurs de chaîne sont triées et comparées. Les collections qui n’utilisent pas SQL_Latin1_General_CP1_CI_AS
ou Latin1_General_CI_AS
reçoivent l’un des messages d’avertissement.
Aucune prise en charge native
La réception de l'avertissement suivant signifie que vous devez prendre en compte les implications de la collation avant d'effectuer la migration.
The collection database's collation '{collation}' is not natively supported in Azure DevOps Services. Importing your collection will result in your collation being converted to one of the supported Azure DevOps Services collations. See more details at https://aka.ms/AzureDevOpsImportCollations
Cet avertissement NE veut PAS dire que vous ne pouvez pas migrer votre collection.
Cet avertissement vous oblige à confirmer l’acceptation de l’avertissement. L’acceptation de l’avertissement permet à l’outil de migration de données de poursuivre les préparations de la migration.
Lorsque vous migrez un classement non pris en charge dans Azure DevOps Services, le classement est transformé en classement pris en charge. Bien que cette transformation fonctionne généralement sans problème, des résultats inattendus après la migration ou des échecs de migration peuvent se produire.
Par exemple, les clients peuvent remarquer un ordre différent pour les chaînes contenant des caractères non anglais. Les caractères non anglais tels que « é » peuvent devenir équivalents à l’anglais « e » après la migration. Il est important de réaliser et de vérifier un test de migration lorsque vous migrez une collection dont la collation n'est pas prise en charge.
Aucune prise en charge native, aucune connexion Internet
Si l’outil de migration de données ne peut pas se connecter à Internet, il ne peut pas valider la conversion de votre classement. Il s’agit uniquement d’un avertissement, ce qui vous permet de poursuivre votre processus de migration. Toutefois, lorsque vous exécutez la commande prepare, une connexion internet est requise et la conversion de collation est validée à ce moment-là.
The collections database's collation '{collation}' is not natively supported in Azure DevOps Services. It could not be validated that the collation can be converted during migration to a supported Azure DevOps Services collation, as there was no internet connection. Please run the command again from a machine with an internet connection. See more details at https://aka.ms/AzureDevOpsImportCollations
Collation de base de données non prise en charge
En règle générale, vous pouvez convertir une collation non prise en charge en une collation prise en charge au moment de la migration. Cependant, certaines collations ne peuvent pas être converties. Si votre collection utilise l'une de ces collations, vous recevez le message d'erreur suivant.
The collection database's collation '{collation}' is not supported for migration to Azure DevOps Services. It will need to be changed to a supported collation before it can be imported. See more details at https://aka.ms/AzureDevOpsImportCollations
Pour continuer, vous devez modifier la collation de votre collection pour la remplacer par l'une des collations prises en charge sur le support Azure DevOps Services.
Résoudre les erreurs d’identité
Corrigez les erreurs d’identité avant la migration pour éviter les problèmes. Ces erreurs sont rares et se produisent lorsque les anciennes opérations ne sont pas valides sur un nouveau serveur Azure DevOps. Par exemple, certains utilisateurs peuvent ne plus faire partie du groupe d’utilisateurs valides.
Les sections suivantes fournissent des conseils pour résoudre les erreurs d’identité les plus courantes.
ISVError : 100014
Cette erreur indique qu’une autorisation est manquante dans un groupe de sécurité système. Par exemple, chaque collection que vous créez comporte les groupes Utilisateurs valides de collection de projets et Administrateurs de collection de projets. Le système les crée par défaut. Ces groupes ne prennent pas en charge la modification de leurs autorisations.
Cette erreur indique qu’un ou plusieurs groupes manquent une autorisation qu’il doit avoir. Pour résoudre cette erreur, utilisez la commande TFSSecurity.exe pour appliquer les autorisations attendues aux groupes système avec indicateur. Votre première étape consiste à identifier la commande TFSSecurity que vous devez exécuter.
Message d’erreur pour les utilisateurs valides de la collection de projets
Examinez un ou plusieurs messages d’erreur mis en surbrillance par l’outil de migration de données. Si le groupe marqué se termine par «0-0-0-0-3», comme dans l’exemple suivant, vous devez corriger une autorisation manquante pour le groupe des utilisateurs valides de la collection de projets.
Exécutez la commande suivante, remplacez l’étendue par celle du message d’erreur et spécifiez l’URL de votre collection.
TFSSecurity.exe /a+ Identity "{scope}\\" Read sid:{Group SID} ALLOW /collection:{collectionUrl}
Vous déterminez l’étendue et l’ID de sécurité de groupe (SID) à partir du message d’erreur.
ISVError:100014 Missing permission for group:Microsoft.TeamFoundation.Identity;S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-3 for scope:397c326b-b97c-4510-8271-75aac13de7a9. Expected:1 and Actual:0
La commande finale s’apparente à l’entrée suivante :
TFSSecurity.exe /a+ Identity "397c326b-b97c-4510-8271-75aac13de7a9\\" Read sid:S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-3 ALLOW /collection:https://localhost:8080/defaultcollection
Message d'erreur des administrateurs de la collection de projets
Examinez attentivement les messages d’erreur mis en surbrillance par l’outil de migration de données. Si le groupe indicateur qui se termine par « 0-0-0-0-1 », comme dans l'exemple suivant, alors vous devez corriger une permission manquante pour le groupe Administrateurs de la collection de projets. Exécutez les commandes suivantes sur TFSSecurity.exe, remplacez l’étendue par celle du message d’erreur et spécifiez votre collection.
TFSSecurity.exe /a+ Identity "{scope}\\" Read sid:{Group SID} ALLOW /collection:{collectionUrl}
TFSSecurity.exe /a+ Identity "{scope}\\" Write sid:{Group SID} ALLOW /collection:{collectionUrl}
TFSSecurity.exe /a+ Identity "{scope}\\" Delete sid:{Group SID} ALLOW /collection:{collectionUrl}
TFSSecurity.exe /a+ Identity "{scope}\\" ManageMembership sid:{Group SID} ALLOW /collection:{collectionUrl}
Dans l’exemple suivant, prenez l’étendue et le groupe SID
à partir du message d’erreur et ajoutez-les à la commande précédente.
ISVError:100014 Missing permission for group:Microsoft.TeamFoundation.Identity;S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1 for scope:0c7c2216-fa4b-4107-a203-82b324a147ef. Expected:15 and Actual:0
La commande finale s’apparente à l’entrée suivante :
TFSSecurity.exe /a+ Identity "0c7c2216-fa4b-4107-a203-82b324a147ef\\" Read sid:S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1 ALLOW /collection:https://localhost:8080/defaultcollection
TFSSecurity.exe /a+ Identity "0c7c2216-fa4b-4107-a203-82b324a147ef\\" Write sid:S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1 ALLOW /collection:https://localhost:8080/defaultcollection
TFSSecurity.exe /a+ Identity "0c7c2216-fa4b-4107-a203-82b324a147ef\\" Delete sid:S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1 ALLOW /collection:https://localhost:8080/defaultcollection
TFSSecurity.exe /a+ Identity "0c7c2216-fa4b-4107-a203-82b324a147ef\\" ManageMembership sid:S-1-9-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-0-0-0-0-1 ALLOW /collection:https://localhost:8080/defaultcollection
Lorsque vous devez corriger plusieurs erreurs, nous vous recommandons de créer un fichier batch pour automatiser l’exécution des commandes. Une fois que vous avez exécuté les commandes, réexécutez l'outil de validation de migration des données pour vérifier la résolution. Si certaines erreurs persistent, contactez le support client d'Azure DevOps Services.
ISVError : 300005
ISVError : 300005 indique qu'une identité n'appartenant pas à un groupe est membre d'un groupe Everyone, plus connu sous le nom de groupe Valid Users. Les groupes Utilisateurs valides sont des groupes par défaut définis pour tous les projets et collections. Ces groupes ne sont pas modifiables. Ils sont conçus pour contenir uniquement d’autres autorisations Azure DevOps ou groupes de sécurité en tant que membres. Cette erreur indique qu’un groupe Active Directory (AD) ou une identité d’utilisateur possède une appartenance directe à un groupe Utilisateurs valides.
Important
Vérifiez que vous disposez d’une sauvegarde de vos bases de données de collecte et de configuration avant d’exécuter les commandes suivantes pour résoudre l’erreur.
Étant donné que vous ne pouvez pas modifier directement les groupes d'Utilisateurs valides, vous devez exécuter une instruction SQL sur la base de données de configuration pour supprimer l'identité problématique et corriger l'appartenance incorrecte. Examinez attentivement les messages d’erreur mis en surbrillance par l’outil de migration de données. Copiez les GroupSid
, MemberId
et ScopeId
lorsque vous devez placer ces valeurs dans la commande suivante.
DECLARE @p6 dbo.typ_GroupMembershipTable
INSERT into @p6 values('{GroupSid}','Microsoft.TeamFoundation.Identity','{MemberId}',0)
EXEC prc_UpdateGroupMembership @partitionId=1,@scopeId='{ScopeId}',@idempotent=1,@incremental=1,@insertInactiveUpdates=0,@updates=@p6,@eventAuthor='9EE20697-5343-43FC-8FC5-3D5D455D21C5',@updateGroupAudit=0
L'exemple suivant montre un message ISVError : 300005 de l'outil de migration de données.
ISVError:300005 Unexpected non group identity was found to have direct membership to everyone group. GroupSid:S-1-9-1551374245-3746625149-2333054533-2458719197-2313548623-0-0-0-0-3, MemberId:76050ddf-4fd8-48c4-a1ff-859e44364519, ScopeId:7df650df-0f8b-4596-928d-13dd89e5f34f
Si le message d’erreur répertorie une MemberSid
, vous devez obtenir le MemberID
à partir de la table dbo.tbl_Identity dans la base de données de configuration. Avec le MemberID
, vous pouvez ensuite rechercher le GUID pour le MemberSid
.
ISVError:300005 Unexpected non group identity was found to have direct membership to everyone group. GroupSid:S-1-9-1551374245-3746625149-2333054533-2458719197-2313548623-0-0-0-0-3, MemberSid:System.Security.Principal.WindowsIdentity;S-1-5-21-124525095-708259637-1543119021-1737349, ScopeId:7df650df-0f8b-4596-928d-13dd89e5f34f
DECLARE @MemberId uniqueidentifier
SET @MemberId = (Select Id from dbo.tbl_Identity where Sid ='S-1-5-21-124525095-708259637-1543119021-1737349');
SELECT @MemberId
Copiez les GroupSid
, MemberId
et ScopeId
dans la commande SQL.
DECLARE @p6 dbo.typ_GroupMembershipTable
INSERT into @p6 values('S-1-9-1551374245-3746625149-2333054533-2458719197-2313548623-0-0-0-0-3','Microsoft.TeamFoundation.Identity','76050ddf-4fd8-48c4-a1ff-859e44364519',0)
EXEC prc_UpdateGroupMembership @partitionId=1,@scopeId='7df650df-0f8b-4596-928d-13dd89e5f34f',@idempotent=1,@incremental=1,@insertInactiveUpdates=0,@updates=@p6,@eventAuthor='9EE20697-5343-43FC-8FC5-3D5D455D21C5'
Exécutez la commande terminée sur la base de données de configuration du serveur Azure DevOps. Répétez cette commande pour chaque ISVError : 300005 instance signalée. Vous pouvez regrouper les erreurs ayant le même ID de portée en une seule commande. Une fois que vous avez exécuté les commandes, réexécutez l’outil de migration de données pour vous assurer que les erreurs sont corrigées. Si les erreurs persistent, contactez le support client Azure DevOps Services.
Important
Pour traiter ces erreurs, la collection doit être attachée.
Si vous recevez un résultat -1 lorsque vous exécutez la commande, vérifiez que votre base de données de collecte qui a généré l’erreur est attachée à votre instance Azure DevOps Server et que vous exécutez la commande sur la base de données de configuration.
Exception de dépassement de délai Microsoft Entra
Dans de rares cas, vous pouvez recevoir une erreur de délai d’expiration de Microsoft Entra lors de l’exécution de la commande de préparation de l’outil de migration de données.
Exception Message: Request failed (type AadGraphTimeoutException)
Cette erreur signifie que les demandes adressées à Microsoft Entra ID pour rechercher les identités Microsoft Entra correspondantes pour les utilisateurs de votre collection ont expiré. En règle générale, vous pouvez résoudre cette erreur en attendant d’exécuter le préparer commande à un moment moins occupé de la journée, par exemple après les heures d’ouverture normales.
Pour résoudre le problème, testez la connexion Microsoft Entra ID à partir de la machine prepare. Suivez ces étapes pour obtenir des informations utilisateur à partir de l’ID Microsoft Entra.
Ouvrez PowerShell en mode élevé et remplacez «someone@somecompany.com» dans la commande suivante par votre identité utilisateur Microsoft Entra.
# Install the Microsoft Graph PowerShell module - ensuring to select Yes to All
Install-Module Microsoft.Graph
# Import Users module
Import-Module Microsoft.Graph.Users
# Connect to Microsoft Entra and use your Microsoft Entra ID credentials (someone@somecompany.com) to login when the pop-up appears
Connect-MgGraph -Scopes 'User.Read.All'
# Try to retrieve information on a user from your Microsoft Entra
Get-MgUser -Filter "UserPrincipalName eq 'someone@somecompany.com'"
Si les étapes échouent ou si vous ne trouvez pas l'utilisateur, vérifiez la connexion entre la machine prepare et Microsoft Entra ID. Exécutez une trace réseau avec préparer pour voir si le réseau bloque les appels. Si ce n’est pas le cas, contactez le support Azure. Vérifiez le fichier journal pour obtenir les informations de l’utilisateur.
Number of active users is {Number of Users}.
Si le nombre d’utilisateurs actifs est supérieur à 50 000, le volume d’identités mappées peut nécessiter plus de temps que prévu par la limite de délai d’attente. Inspectez votre collection et cherchez les inclusions de grands groupes, tels qu’un groupe « tout le monde ». Si possible, supprimez ces groupes et réessayez. Si vous ne pouvez toujours pas résoudre cette erreur, contactez support client Azure DevOps Services.
Résoudre les erreurs de processus
Consultez l’article Valider la phase, Résoudre les modèles de processus pour plus d’informations sur la résolution des erreurs de processus courantes.
Résoudre les erreurs de validation de champ
VS403310
Le message d’erreur suivant peut se produire lorsqu’une incohérence dans les fichiers de collection est détectée. Contactez le support client si vous rencontrez cette erreur.
VS403310: An inconsistency was detected in some of the files in the collection.
VS403442
Les conflits de noms de champ se produisent parfois entre votre collection locale et un champ système Azure DevOps Services.
In order to migrate successfully, you must rename field *{TFSfieldReferenceName}*. Given name *{TFSfieldName}* is reserved for field *{VSTSfieldReferenceName}*.
Pour résoudre cette erreur, modifiez le nom de votre champ de collection. Utilisez la witadmin changefield
commande witadmin.
witadmin changefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName /name:newFieldName
VS403443
L’erreur suivante indique qu’un conflit de noms de champ existe entre votre collection locale et un champ Azure DevOps Services spécifique.
In order to migrate successfully, you must rename field *{TFSfieldReferenceName}* to *{VSTSfieldName}*. Given name for *{TFSfieldReferenceName}* is *{TFSfieldName}*
Pour résoudre cette erreur, utilisez la commande witadmin changefield
. Pour plus de détails, voir witadmin.
witadmin changefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName /name:VSTSfieldName
VS403444
L’erreur suivante indique qu’un conflit de type de champ existe entre votre collection locale et Azure DevOps Services.
À l’aide de witadmin, vous pouvez modifier le type de données uniquement pour les champs HTML ou PlainText.
In order to migrate successfully, you must set type of field *{TFSfieldReferenceName}* to *{Type}*. Given type for *{TFSfieldReferenceName}* is *{collectionType}*.
Si votre type de champ est HTML ou PlainText, vous pouvez remplacer son type par le type requis.
witadmin changefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName /type:PlainText | HTML
Remarque
Si votre type de champ est différent du code HTML ou PlainText et que les données de champ ne sont pas importantes ou que le champ n’est pas utilisé dans un projet, nous vous recommandons de supprimer le champ.
witadmin deletefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName
Important
La suppression d’un champ entraîne une perte de données de champ dans la collection.
Résoudre les échecs de vérification
Les échecs de vérification signifient que la migration n’a pas démarré. L’outil de migration de données a tenté de mettre en file d’attente une migration, mais a obtenu une erreur à la place. Votre demande de migration n’est pas valide. Corrigez les messages d’erreur, puis réessayez de migrer.
VS403254
La région que vous avez entrée pour votre migration Azure DevOps Services n’est pas prise en charge.
VS403254: Region {0} might not be used for the Import, it is not a supported region.
Ouvrez votre fichier de spécification de migration et mettez à jour la région que vous avez fournie avec le nom court approprié pour la région .
VS403249
Le nom de l’organisation sélectionné par votre équipe est déjà utilisé par une organisation existante. Toutes les migrations Azure DevOps Services sont effectuées dans une nouvelle organisation créée au moment de la migration.
VS403249: The organization {0} already exists. Please select a different name and try the migration again.
Sélectionnez un autre nom d’organisation et mettez à jour le fichier de spécification de migration avant de réessayer la migration.
VS403250 & VS403286
La DACPAC n’est pas créée à partir d’une collection détachée.
VS403250: The dacpac is not a detached Azure DevOps Server Collection database.
VS403286: The dacpac is from a Azure DevOps Server Configuration database. You must use a detached Azure DevOps Server Collection database.
Détachez votre base de données de collecte et générez à nouveau le DACPAC.
VS403243
Impossible d’établir une connexion à la base de données à l’aide de la chaîne de connexion SQL fournie.
VS403243: Unable to connect to the database using the provided SQL Connection String {0}.
Passez en revue les paramètres fournis pour vous assurer qu’ils sont corrects et réessayez.
VS403260 & VS403351
La base de données de collection n’est pas détachée.
VS403260: The database is not detached.
VS403351: The DACPAC or source database is missing an expected table. It's possible that the database was not correctly detached from Azure DevOps Server.
Détachez votre base de données de collecte et réessayez la file d'attente de migration.
VS403261
La chaîne de connexion doit être chiffrée sinon le mot de passe est envoyé en clair.
VS403261: The SQL connection string must use encryption.
Ajoutez Encrypt=true à votre chaîne de connexion SQL.
VS403262
La chaîne de connexion doit utiliser l’authentification SQL.
VS403262: The SQL connection string must use SQL Authentication, Integrated Authentication is not supported.
Ajoutez Integrated Security=False à votre chaîne de connexion SQL.
VS403263
Votre compte d’utilisateur de connexion SQL n’a pas le rôle de base de données requis.
VS403263: The User ID {0} must be member of the database role {1}.
Vérifiez que le compte d’utilisateur pour la connexion est affecté au rôle « TFSEXECROLE ».
Remarque
Il existe un problème connu lié à l’utilisation de sp_addrolemember
pour ajouter TFSEXECROLE
à une connexion SQL existante. L’appartenance au rôle n’est pas appliquée tant que toutes les connexions ouvertes utilisant cette identité ne sont pas fermées. Si vous recevez l'erreur VS403263 et que vous avez confirmé que votre identité a le rôle, nous vous recommandons de créer une nouvelle identité pour votre migration.
VS403264
La chaîne de connexion ne pointe pas vers une base de données de collection Azure DevOps Server.
VS403264: The database is not a Azure DevOps Server Collection database, it cannot be used for migration.
Vérifiez ou corrigez la chaîne de connexion qui pointe vers votre base de données de collecte.
VS40325
La mise à jour du serveur Azure DevOps a mis en file d’attente la tâche de migration de fichiers. Vous ne pouvez pas effectuer de migrations tant que ce travail n’est pas terminé. Le temps d’achèvement de ce travail dépend de la taille de la collection.
VS403255: The collection cannot be imported due to an ongoing post upgrade job. Please wait and try again later
Vous pouvez suivre la progression du travail en exécutant la requête suivante sur la base de données de collecte :
SELECT COUNT (*) as remaining_files_to_migrate
FROM tbl_FileReference
WHERE PartitionId > 0
AND MigrateFileId IS NOT NULL
Une fois que le nombre de fichiers restants à migrer est égal à zéro, vous pouvez exécuter l’outil de migration de données.
VS403282
Un nouveau caractère de ligne existe dans la valeur de l'emplacement source. Ce caractère peut rester après avoir copié la clé SAP à partir de votre console Windows.
VS403282: The source location parameter contains a new line character. Please ensure the SAS key is defined on a single line in the migration specification file.
Supprimez le saut de ligne et réessayez.
VS403271
Vos fichiers de migration et DACPAC ne sont pas situés dans la région Azure requise pour terminer la migration vers votre région Azure DevOps Services cible.
VS403271: It appears that your DACPAC was uploaded to East US. It's required that customers targeting Central US for migration put their DACPACs in Central US. Please move your DACPAC to Central US and requeue the migration.
Créer un compte de stockage Microsoft Azure dans la région requise et copier vos fichiers. L’exemple suivant montre comment copier vos données à l’aide de AzCopy.
AzCopy.exe /Source:https://accountSCUS.blob.core.windows.net/mycontainer /SourceKey:"primary access key" /Dest:https://accountCUS.blob.core.windows.net/mycontainer /DestKey:"primary access key" /S
VS403316
Des incohérences ont été détectées dans certains fichiers TFVC (Team Foundation Version Control) au sein de votre collection.
VS403316: An inconsistency was detected in some TFVC files for this collection. The inconsistency needs to be corrected prior to running a migration to Azure DevOps Services. Please reach out to https://aka.ms/AzureDevOpsImportSupport for assistance with addressing this issue.
Collaborez avec le support clientd'Azure DevOps Services
VS403366
L’outil de migration de données n’a pas pu se connecter à la machine virtuelle SQL Azure.
VS403366: A problem occurred while attempting to connect to your database. Please verify that your connection string is correct and that all required IP addresses for Azure DevOps Services have been provided exceptions for your machines firewall.
List of Azure DevOps Services IPs:
Vérifiez que vous avez entré correctement les informations dans votre chaîne de connexion et que vous pouvez vous connecter à la machine virtuelle.
Les adresses IP que les messages d'erreur lister appartiennent aux services Azure DevOps. Les adresses IP Azure DevOps Services peuvent changer temporairement pendant les déploiements. Ajoutez-les à vos exceptions de pare-feu et réessayez de mettre en file d’attente la migration. Pour obtenir la liste des adresses IP, consultez Migrer des collections volumineuses, restreindre l'accès uniquement aux adresses IP des services Azure DevOps.
VS403373
L’outil de migration de données ne prend pas en charge la migration de plusieurs copies de la collection SAME
À partir de SQL Server Management Studio (SSMS), ouvrez les propriétés étendues des copies fractionnées que vous n’avez pas encore migrées. Ajoutez un GUID nouvellement généré à la propriété « TFS_DATAIMPORT_COLLECTIONID ». Réexécutez ensuite la préparer commande et utilisez le nouveau fichier migration.json pour mettre en file d’attente la migration.
VS403379
La migration des données échoue car un ou plusieurs projets trouvés dans cette collection sont à l’étape de suppression réversible. Restaurez les projets supprimés de manière réversible ou supprimez-les définitivement avant d’exécuter la migration des données. Pour plus d’informations, consultez Supprimer un projet.
VS403379: Data migration will fail as one or more projects found in this collection are in the soft-deleted stage. Please restore the soft-deleted project(s) or delete them permanently before running the data migration.
Vérifiez que la collection contre laquelle vous exécutez l'outil de migration des données a des projets en phase de suppression progressive. Une fois qu’un projet est supprimé, il reste dans un état de suppression réversible pendant 28 jours pendant lesquels le projet supprimé peut être restauré. Vous pouvez découvrir comment restaurer un projet supprimé dans Restaurer un projet. Si vous avez des projets dans la phase de suppression réversible, supprimez-les complètement ou restaurez-les avant d’exécuter la migration des données.
Résoudre les échecs de migration
Les échecs de migration signifient que la migration a été mise en attente, mais qu’elle n’a pas été terminée. La personne qui a mis en file d’attente la migration reçoit une notification par e-mail d’échec. La plupart du temps, cet e-mail inclut une raison de l’échec. Si c’est le cas, utilisez les étapes de résolution des problèmes fournies dans l’e-mail et cette page pour résoudre les erreurs et réessayer votre migration.
Si l’erreur est plus complexe, l’e-mail que vous recevez fournit des instructions sur la façon de déposer un cas de support client . Après avoir soumis un cas de support client, votre équipe doit restaurer en remettant en ligne votre instance d'Azure DevOps Server et rattacher votre collection. Les membres de votre équipe peuvent ensuite continuer à travailler. Nous vous recommandons de ne pas réessayer la migration tant que l’échec n’a pas provoqué la résolution du problème.
Questions fréquentes (FAQ)
Q : Que dois-je faire si ma migration a été mise en file d’attente, mais que j’ai échoué et que je n’ai pas reçu d’e-mail avec les étapes suivantes ?
R : Si votre migration a été mise en file d’attente mais a échoué et que vous n’avez pas reçu de notification par e-mail, procédez comme suit :
- Vérifier les journaux de migration: passez en revue les journaux de migration pour tous les messages d’erreur susceptibles d’indiquer la cause de l’échec. Les journaux d’activité peuvent fournir des informations sur ce qui s’est passé pendant le processus de migration.
- Suivez les étapes de résolution des problèmes: reportez-vous aux étapes de résolution des problèmes décrites dans ce guide de résolution des problèmes de migration. Ces étapes peuvent vous aider à identifier et à résoudre les problèmes courants qui ont peut-être provoqué l’échec.
- Contactez le support client : Si l'erreur est complexe ou si vous ne parvenez pas à résoudre le problème à l'aide des journaux et des étapes de dépannage, envisagez de déposer un dossier d'assistance client pour obtenir une aide supplémentaire.
- Réinitialisez et réessayez : Si nécessaire, restaurez votre instance Azure DevOps Server et rattachez la collection avant de tenter à nouveau la migration.