Solucionar problemas de erros de importação e migração

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

A ferramenta de migração de dados sinaliza os erros que você precisa corrigir antes de executar uma migração para o Azure DevOps Services. Este artigo descreve os avisos e erros mais comuns que você pode receber quando estiver se preparando para migrar. Depois de corrigir cada erro, execute o comando migrator validate novamente para verificar a resolução.

Observação

Recomendamos que você use o Guia de migração para avançar na importação. O guia vincula-se à documentação técnica conforme necessário.

Com o lançamento do Azure DevOps Server 2019, o Serviço de Importação de Banco de Dados do Team Foundation Server (TFS) foi renomeado para se tornar a ferramenta de migração de dados para o Azure DevOps. A ferramenta de migração de dados, TfsMigrator foi renomeada para Migrator para abreviar. O serviço ainda funciona exatamente da mesma forma que o serviço de importação anterior. Se você estiver em uma versão mais antiga do local com o TFS como marca, ainda poderá usar o Migrator para migrar para o Azure DevOps, desde que atualize para uma das versões com suporte. Para obter detalhes, consulte Migrar dados do Servidor de DevOps do Azure para os Serviços de DevOps do Azure.

Resolver avisos de tamanho

Coleções extragrandes podem gerar uma das seguintes mensagens depois de executar a ferramenta de migração de dados. Se você receber qualquer um desses avisos ou erros, recomendamos que você tente reduzir o tamanho do banco de dados.

O aviso a seguir significa que você precisa usar o método de VM do SQL Azure para concluir sua importação. Quando um banco de dados atinge um determinado tamanho, fica mais rápido configurar uma VM do SQL Azure para concluir a importação para os Serviços de DevOps do Azure. Para configurar a VM e concluir a importação, siga as instruções vinculadas na mensagem de aviso.

The database is currently {Database Size}GBs. This is above the recommended size of {DACPAC Size Limit}GBs to use the DACPAC import method. Please see the following page to learn how to import using a SQL Azure VM: https://aka.ms/AzureDevOpsImportLargeCollection

Esse aviso NÃO significa que sua coleção é muito grande para importação.

Semelhante ao aviso anterior, o aviso a seguir significa que você deve usar o método de máquina virtual (VM) do SQL Azure para concluir a importação. Siga as instruções vinculadas da mensagem de aviso para configurar a VM e concluir a importação.

The largest table size is currently {Table size}GBs. This is above the recommended size of {Size limit}GBs to use the DACPAC import method. Please see the following page to learn how to import using a SQL Azure VM: https://aka.ms/AzureDevOpsImportLargeCollection  

Esse aviso NÃO significa que sua coleção é muito grande para importação.

O aviso a seguir significa que o banco de dados está se aproximando do limite para o tamanho total de metadados. Tamanho de metadados refere-se ao tamanho do banco de dados sem incluir arquivos, código e outros dados binários. Recomendamos que você reduza o tamanho do banco de dados antes de importar. Reduzir o tamanho oferece o outro benefício de acelerar sua importação.

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).

O aviso NÃO significa que sua coleção é muito grande para importação, em vez disso, seu tamanho de metadados é maior do que a maioria dos outros bancos de dados.

Tamanho dos metadados do banco de dados acima do tamanho máximo suportado

Ao contrário dos avisos anteriores, o erro a seguir BLOQUEARÁ você de avançar com a migração.

Isso indica que o volume de metadados em sua coleção é muito grande. Para prosseguir com a importação, você precisa reduzir o tamanho abaixo do limite indicado.

The database metadata size is currently {Metadata Size}GBs. This is above the maximum supported size of {Metadata Limit}GBs.

Resolver avisos de agrupamento

Os avisos de agrupamento referem-se ao agrupamento do banco de dados de coleção. Os agrupamentos controlam a maneira como os valores de cadeia de caracteres são classificados e comparados. Coleções que não estão usando nenhum dos dois SQL_Latin1_General_CP1_CI_AS ou Latin1_General_CI_AS recebem uma das mensagens de aviso .

Sem suporte nativo

Receber o aviso a seguir significa que você precisa considerar as implicações de agrupamento antes de executar a importação.

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

Esse aviso NÃO significa que você não pode importar sua coleção.

Este aviso requer que você confirme a aceitação do aviso. Aceitar o aviso permite que a ferramenta de migração de dados continue os preparativos de importação.

Quando você importa um agrupamento sem suporte para os Serviços de DevOps do Azure, o agrupamento é transformado em um agrupamento com suporte. Embora essa transformação geralmente funcione sem problemas, resultados inesperados após a importação ou falhas de importação podem ocorrer.

Por exemplo, os clientes podem notar pedidos diferentes para cadeias de caracteres que contêm caracteres que não estão em inglês. Caracteres não ingleses como 'é' podem se tornar equivalentes ao inglês 'e' após a importação. É importante que você conclua e verifique uma importação de execução seca ao importar uma coleção com um agrupamento sem suporte.

Sem suporte nativo, sem conexão com a internet

Se a ferramenta de migração de dados não puder se conectar à Internet, ela não poderá validar a conversão do seu agrupamento. É apenas um aviso, para que você possa continuar com seu processo de migração. No entanto, quando você executa o comando prepare, uma conexão com a Internet é necessária e a conversão de agrupamento é validada nesse momento.

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 import 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

Agrupamento de banco de dados sem suporte

Geralmente, você pode converter um agrupamento sem suporte em um agrupamento com suporte no momento da importação. No entanto, alguns agrupamentos não podem ser convertidos. Se sua coleção usa um desses agrupamentos, você receber a seguinte mensagem de erro .

The collection database's collation '{collation}' is not supported for import 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

Para continuar, você precisa alterar o agrupamento da sua coleção para um dos agrupamentos com suporte nos Serviços de DevOps do Azure.

Resolver erros de identidade

Corrija erros de identidade antes da migração para evitar problemas. Eles são raros e acontecem quando operações antigas do TFS são inválidas no novo Servidor de DevOps do Azure. Por exemplo, alguns usuários não podem mais estar no grupo de usuários válidos.

As seções a seguir fornecem orientação para resolver os erros de identidade mais comuns.

ISVError: 100014

Esse erro indica que uma permissão está faltando em um grupo de segurança do sistema. Por exemplo, cada coleção que você cria tem usuários válidos da coleção de projetos e grupos de administradores de coleção de projeto. O sistema os cria por padrão. Esses grupos não oferecem suporte à edição de suas permissões.

Esse erro indica que um ou mais grupos não têm uma permissão esperada. Para resolver esse erro, use o comando TFSSecurity.exe para aplicar as permissões esperadas aos grupos de sistema sinalizados. Sua primeira etapa é identificar qual (is) comando(s) do TFSSecurity você precisa executar.

Mensagem de erro Usuários válidos da coleção de projetos

Examine a(s) mensagem(ões) de erro realçada(s) pela ferramenta de migração de dados. Se o grupo sinalizado terminar com "0-0-0-0-3", como no exemplo a seguir, você precisará corrigir uma permissão ausente para o grupo Usuários Válidos da Coleção de Projetos.

Execute o comando a seguir, substitua o escopo pelo da mensagem de erro e especifique a URL da coleção.

TFSSecurity.exe /a+ Identity "{scope}\\" Read sid:{Group SID} ALLOW /collection:{collectionUrl}

Determinar o escopo e ID de segurança de grupo (SID) da mensagem de erro.

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 

O comando final é semelhante à seguinte entrada:

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

Mensagem de erro Administradores de Coleção de Projetos

Examine cuidadosamente a(s) mensagem(ões) de erro destacada(s) pela ferramenta de migração de dados. Se o grupo sinalizado terminar com "0-0-0-0-1", como no exemplo a seguir, você precisará corrigir uma permissão ausente para o grupo Administradores de Coleção de Projetos . Execute os comandos a seguir em TFSSecurity.exe, substitua o escopo pelo da mensagem de erro e especifique sua coleção.

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}

No exemplo a seguir, pegue o escopo e o grupo SID da mensagem de erro e adicione-os ao comando anterior.

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 

O comando final é semelhante à seguinte entrada:

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

Quando você precisar corrigir vários erros, recomendamos que você crie um arquivo em lotes para automatizar a execução dos comandos. Depois de executar os comandos, você precisará executar novamente a ferramenta de validação de migração de dados para verificar a resolução. Se alguns erros ainda persistirem, entre em contato com o suporte ao cliente dos Serviços de DevOps do Azure.

ISVError: 300005

ISVError: 300005 indica que uma identidade que não é de grupo é membro de um grupo de todos, mais comumente conhecido como grupos Usuários válidos. Grupos de Usuários válidos são grupos padrão definidos para todos os projetos e coleções. Esses grupos não são editáveis. Eles foram projetados para conter apenas outras permissões do Azure DevOps ou grupos de segurança como membros. Esse erro indica que um grupo do Active Directory (AD) ou uma identidade de usuário tem uma associação direta a um grupo Usuários Válidos.

Importante

Verifique se você tem um backup dos bancos de dados de coleção e configuração antes de executar os comandos a seguir para resolver o erro.

Como não é possível editar diretamente grupos de Usuários Válidos, você precisa executar uma instrução SQL no banco de dados de configuração para remover a identidade ofensiva e corrigir a associação inválida. Examine cuidadosamente as mensagens de erro realçadas pela ferramenta de migração de dados. Copie o GroupSid, MemberIde ScopeId como você precisa colocar esses valores no comando a seguir.

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

O exemplo a seguir lista um exemplo de uma mensagem ISVError: 300005 da ferramenta de migração de dados.

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

Se a mensagem de erro listar um MemberSid, você precisará obter o MemberID da tabela dbo.tbl_Identity no banco de dados de configuração. Com o MemberID, você pode procurar o GUID para o 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

Copie o GroupSid, MemberIde ScopeId para o comando 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'

Execute o comando concluído no banco de dados de configuração do Servidor de DevOps do Azure. Repita este comando para cada ISVError: 300005 instância relatada. Você pode agrupar erros em lote com o mesmo ID de escopo em um único comando. Depois de executar os comandos, execute novamente a ferramenta de migração de dados validar novamente para garantir que os erros foram corrigidos. Se os erros ainda persistirem, entre em contato com o suporte ao cliente dos Serviços de DevOps do Azure.

Importante

Para corrigir esses erros, a coleção deve ser anexada.

Se você receber um resultado -1 ao executar o comando, verifique se o banco de dados de coleção que produziu o erro está anexado à instância do Servidor de DevOps do Azure e se você está executando o comando no banco de dados de configuração.

Exceção de tempo limite do Microsoft Entra

Em raras ocasiões, você pode receber um erro de tempo limite do Microsoft Entra ao executar o comando prepare da ferramenta de migração de dados.

Exception Message: Request failed (type AadGraphTimeoutException)

Esse erro significa que as solicitações à ID do Microsoft Entra para localizar as identidades correspondentes do Microsoft Entra para os usuários em sua coleção expiraram. Geralmente, você pode resolver esse erro aguardando para executar o comando prepare em um horário menos ocupado do dia, como após o horário comercial normal.

Para solucionar o problema, teste a conexão do Microsoft Entra ID do computador de preparação . Siga estas etapas para obter informações do usuário do Microsoft Entra ID.

Abra o PowerShell no modo elevado e substitua 'someone@somecompany.com' no comando a seguir pela identidade de usuário do 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'"

Se as etapas falharem ou você não conseguir encontrar o usuário, verifique a conexão entre a máquina de preparação e a ID do Microsoft Entra. Execute um rastreamento de rede com prepare para ver se a rede bloqueia chamadas. Caso contrário, entre em contato com o suporte do Azure. Verifique o arquivo de log para obter as informações do usuário.

Number of active users is {Number of Users}.

Se o número de usuários ativos for superior a 50.000, o volume de identidades que está sendo mapeado pode exigir mais tempo do que o fornecido pelo limite de tempo limite. Inspecione sua coleção em busca de inclusões de grandes grupos, como um grupo de "todos". Se possível, remova esses grupos e tente novamente. Se você ainda não conseguir resolver esse erro, entre em contato com o suporte ao cliente dos Serviços de DevOps do Azure.

Resolver erros de processo

Consulte a página Modelos de processo separados para obter detalhes sobre como resolver erros comuns de processo.

Resolver erros de validação de campo

VS403310

A seguinte mensagem de erro pode ocorrer quando uma inconsistência nos arquivos de coleção é detectada. Entre em contato com o suporte ao cliente se encontrar esse erro.

VS403310: An inconsistency was detected in some of the files in the collection.

VS403442

Às vezes, ocorrem conflitos de nome de campo entre sua coleção local e um campo de sistema dos Serviços de DevOps do Azure.

In order to migrate successfully, you must rename field *{TFSfieldReferenceName}*. Given name *{TFSfieldName}* is reserved for field *{VSTSfieldReferenceName}*.

Para resolver esse erro, altere o nome do campo de coleção. Use o comando witadmin changefield do witadmin.

witadmin changefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName /name:newFieldName

VS403443

O erro a seguir indica que existe um conflito de nome de campo entre sua coleção local e um campo específico dos Serviços de DevOps do Azure.

In order to migrate successfully, you must rename field *{TFSfieldReferenceName}* to *{VSTSfieldName}*. Given name for *{TFSfieldReferenceName}* is *{TFSfieldName}*

Para resolver esse erro, use o comando witadmin changefield . Para obter detalhes, consulte witadmin.

witadmin changefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName /name:VSTSfieldName

VS403444

O erro a seguir indica que existe um conflito de tipo de campo entre sua coleção local e os Serviços de DevOps do Azure.

Usando witadmin, você pode alterar o tipo de dados somente para campos HTML ou PlainText.

In order to migrate successfully, you must set type of field *{TFSfieldReferenceName}* to *{Type}*. Given type for *{TFSfieldReferenceName}* is *{collectionType}*.

Se o tipo de campo for HTML ou PlainText, você poderá alterar seu tipo para o tipo necessário.

witadmin changefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName  /type:PlainText | HTML

Observação

Se o seu tipo de campo for diferente de HTML ou PlainText e os dados de campo não forem importantes ou o campo não for usado em nenhum projeto, recomendamos que você exclua o campo.

witadmin deletefield /collection:http://AdventureWorksServer:8080/DefaultCollection /n:TFSfieldReferenceName

Importante

A exclusão de um campo resulta em uma perda de dados de campo em toda a coleção.

Resolver erros de importação

As falhas que ocorrem durante a importação se enquadram em uma de duas categorias, falha de verificação e falha de importação.

Falhas de verificação

Falhas de verificação significam que a importação não foi iniciada. A ferramenta de migração de dados tentou enfileirar uma importação, mas obteve um erro. Sua solicitação de importação não é válida. Corrija as mensagens de erro e tente importar novamente.

VS403254

A região que você inseriu para sua importação dos Serviços de DevOps do Azure não tem suporte.

VS403254: Region {0} might not be used for the Import, it is not a supported region.

Abra o arquivo de especificação de importação e atualize a região que você forneceu com o nome abreviado correto para a região.

VS403249

O nome da organização que sua equipe selecionou já está em uso por uma organização existente. Todas as importações dos Serviços de DevOps do Azure vão para uma nova organização criada no momento da importação.

VS403249: The organization {0} already exists. Please select a different name and try the import again.

Selecione um nome de organização diferente e atualize o arquivo de especificação de importação antes de tentar novamente a importação.

VS403250 & VS403286

O DACPAC não é construído a partir de uma coleção separada.

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.

Desanexe o banco de dados de coleção e gere o DACPAC novamente.

VS403243

Não é possível estabelecer uma conexão com o banco de dados usando a cadeia de conexão SQL fornecida.

VS403243: Unable to connect to the database using the provided SQL Connection String {0}.

Revise os parâmetros fornecidos para garantir que estejam corretos e tente novamente.

VS403260 & VS403351

O banco de dados da coleção não está desanexado.

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.

Desanexe o banco de dados de coleção e repita a fila de importação.

VS403261

A cadeia de conexão deve ser criptografada, caso contrário, a senha é enviada em branco.

VS403261: The SQL connection string must use encryption.

Adicione Encrypt=true à sua cadeia de conexão SQL.

VS403262

A cadeia de conexão deve usar a Autenticação SQL.

VS403262: The SQL connection string must use SQL Authentication, Integrated Authentication is not supported.

Adicione Integrated Security=False à cadeia de conexão SQL.

VS403263

Sua conta de usuário de entrada SQL não tem a função de banco de dados necessária.

VS403263: The User ID {0} must be member of the database role {1}.

Certifique-se de que a conta de utilizador para iniciar sessão tem a função 'TFSEXECROLE' atribuída.

Observação

Há um problema conhecido com o uso sp_addrolemember para adicionar TFSEXECROLE a um logon SQL existente. A associação de função não é aplicada até que todas as conexões abertas usando essa identidade sejam fechadas. Se você receber o erro VS403263 e tiver confirmado que sua identidade tem a função, recomendamos que você crie uma nova identidade para sua importação. Detalhes sobre como criar um novo logon SQL pronto para ser usado para importação podem ser encontrados em Importar grandes coleções.

VS403264

A cadeia de conexão não aponta para um banco de dados de coleção do Servidor de DevOps do Azure.

VS403264: The database is not a Azure DevOps Server Collection database, it cannot be used for import.

Verifique ou corrija os pontos de cadeia de conexão para o banco de dados de coleção.

VS40325

A Atualização do Servidor de DevOps do Azure colocou o trabalho de migração de arquivos na fila. As importações não podem ser executadas até que esse trabalho seja concluído. O tempo de conclusão desse trabalho depende do tamanho da coleção.

VS403255: The collection cannot be imported due to an ongoing post upgrade job. Please wait and try again later

Você pode controlar o progresso do trabalho executando a seguinte consulta no banco de dados de coleção:

SELECT  COUNT (*) as remaining_files_to_migrate
FROM    tbl_FileReference
WHERE   PartitionId > 0
        AND MigrateFileId IS NOT NULL

Quando o número de arquivos restantes para migrar for zero, você poderá executar a ferramenta de migração de dados.

VS403282

Existe um novo caractere de linha no valor do local de origem. Esse caractere pode ter permanecido depois de copiar a chave SAS do console do Windows.

VS403282: The source location parameter contains a new line character. Please ensure the SAS key is defined on a single line in the import specification file.

Remova a quebra de linha e tente novamente.

VS403271

Seus arquivos de importação e DACPAC não estão localizados na região do Azure necessária para concluir a importação para a região dos Serviços de DevOps do Azure de destino.

VS403271: It appears that your DACPAC was uploaded to East US. It's required that customers targeting Central US for import put their DACPACs in Central US. Please move your DACPAC to Central US and requeue the import.

Crie uma nova conta de armazenamento do Microsoft Azure na região necessária e copie seus arquivos. O exemplo a seguir mostra como copiar seus dados usando 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

Inconsistências foram detectadas em alguns arquivos de controle de versão do Team Foundation (TFVC) dentro de sua coleção.

VS403316: An inconsistency was detected in some TFVC files for this collection. The inconsistency needs to be corrected prior to running an import to Azure DevOps Services. Please reach out to https://aka.ms/AzureDevOpsImportSupport for assistance with addressing this issue.

Trabalhe com o suporte ao cliente dos Serviços de DevOps do Azure. Abra um tíquete de suporte e eles trabalham com você para resolver o erro.

VS403366

A ferramenta de migração de dados não pôde se conectar à VM do 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:

Verifique se você inseriu as informações corretamente na cadeia de conexão e se pode se conectar à VM.

Os IPs que as mensagens de erro listam são para os Serviços de DevOps do Azure. Os IPs dos Serviços de DevOps do Azure podem ser alterados temporariamente durante as implantações. Adicione-os às exceções do firewall e tente enfileirar a importação novamente. Para obter uma lista de endereços IP, consulte Importar grandes coleções, Restringir o acesso somente a IPs dos Serviços de DevOps do Azure

VS403373

A ferramenta de migração de dados não oferece suporte à importação de várias cópias da coleção SAME . No entanto, ele NÃO oferece suporte à importação de cópias divididas de uma coleção. Altere o GUID para o DataImportCollectionID.

No SQL Server Management Studio (SSMS), abra as propriedades estendidas das cópias divididas que você ainda não importou. Adicione um GUID recém-gerado à propriedade "TFS_DATAIMPORT_COLLECTIONID". Em seguida, execute novamente o comando prepare e use o novo arquivo import.json para enfileirar a importação.

VS403379

A importação de dados falha, pois um ou mais projetos encontrados nesta coleção estão no estágio de exclusão flexível. Restaure o(s) projeto(s) excluído(s) ou exclua-os permanentemente antes de executar a importação de dados. Para obter detalhes, consulte Excluir um projeto.

VS403379: Data import 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 import.

Verifique se a coleção na qual você está executando a ferramenta de migração de dados tem projetos no estágio de exclusão flexível. Depois que um projeto é excluído, ele permanece em um estado de exclusão suave por 28 dias durante os quais o projeto excluído pode ser restaurado. Você pode ler sobre como restaurar um projeto excluído em Restaurar um projeto. Se você tiver projetos no estágio de exclusão flexível, remova-os completamente ou restaure-os de volta antes de executar a importação de dados.

Falhas de importação

Falhas de importação significam que a importação entrou na fila, mas não foi concluída. O indivíduo que enfileirou a importação recebe uma notificação por e-mail de falha. Na maioria das vezes, esse e-mail inclui um motivo para a falha. Se isso acontecer, use as etapas de solução de problemas fornecidas no email e nesta página para resolver os erros e tentar novamente a importação.

Se o erro for mais complexo, o e-mail que você receber fornece instruções sobre como registrar um caso de suporte ao cliente. Depois de enviar um caso de suporte ao cliente, sua equipe deve reverter colocando sua instância do Servidor de DevOps do Azure online novamente e anexando novamente sua coleção. Os membros da equipe podem continuar trabalhando. Recomendamos que você não tente a importação novamente até que a falha que causou o problema seja resolvida.