DetailPage-MSS-KB

Base de Dados de Conhecimento

Artigo: 972365 - Última revisão: segunda-feira, 17 de Agosto de 2009 - Revisão: 1.1

Disponível transferência de hotfix
Ver e solicitar transferências de hotfix
 
 
A Microsoft distribui correcções Microsoft SQL Server 2005 como um ficheiro transferível. Uma vez que as correcções são cumulativas, cada nova versão contém todas as correcções e todas as correcções de segurança incluídas com o SQL Server 2005 anterior corrigir lançamento.

Nesta página

Sintomas

Considere o seguinte cenário.
  • No Microsoft SQL Server 2005, dispõe de um pacote de SQL Server Integration Services (SSIS) que utiliza uma tarefa de fluxo de dados.
  • A tarefa de fluxo de dados contém referências a colunas de dados de objectos grandes binários (BLOB). Uma coluna BLOB é uma coluna de tipo de dados DT_TEXT, o tipo de dados DT_NTEXT ou o tipo de dados DT_IMAGE.
  • Definir a propriedade BLOBTempStoragePath para a tarefa de fluxo de dados. Quando SSIS processa a coluna BLOB, vai escrever temporariamente dados da coluna BLOB no disco.
  • Existem mais de 65.536 linhas activas que contêm dados BLOB a tarefa de fluxo de dados.

Neste cenário, execute o pacote SSIS. Quando SSIS tenta escrever os dados BLOB para armazenamento temporário, receberá as seguintes mensagens de erro:

mensagem de erro 1

Erro: 0x80070050 na tarefa dados de fluxo, DTS.Pipeline: O ficheiro existe.
mensagem de erro 2

DTS_E_BUFFERGETTEMPFILENAME
Erro: 0xC0048019 na tarefa dados de fluxo, DTS.Pipeline: O Gestor de memória intermédia não foi possível obter um nome de ficheiro temporário. A chamada para GetTempFileName falhou.
mensagem de erro 3

DTS_E_UNUSABLETEMPORARYPATH
Erro: 0xC0048013 na tarefa dados de fluxo, DTS.Pipeline: O Gestor de memória intermédia não conseguiu criar um ficheiro temporário no caminho "Path". O caminho novamente não será considerado para armazenamento temporário.
mensagem de erro 4

DTS_E_CANTCREATEBLOBFILE
Erro: 0xC0047070 na tarefa dados de fluxo, DTS.Pipeline: O Gestor de memória intermédia não é possível criar um ficheiro para colocar em spool um objecto longo nos directórios denominado na propriedade BLOBTempStoragePath. Ou foi fornecido um nome de ficheiro incorrecto ou não existem nenhuma permissão.
mensagem de erro 5

DTS_E_UNABLETOWRITELOBDATATOBUFFER
Erro: 0xC02020E5 na tarefa dados de fluxo, plano origem do ficheiro [1]: longo dados do objecto do tipo DT_TEXT, DT_NTEXT ou DT_IMAGE de escrita para a memória intermédia de tarefa de fluxo de dados falhou para a coluna "ColumnName".
mensagem de erro 6

DTS_E_CANTADDBLOBDATA
Erro: 0xC0208266 na tarefa dados de fluxo, DTS.Pipeline: mais dados foram obtidos para uma coluna mas não pode ser adicionados ao fluxo de dados memória intermédia de tarefa.


É teoricamente possível que um problema semelhante também poderá ocorrer no seguinte cenário:
  • Executa um pacote SSIS que contém uma tarefa de fluxo de dados.
  • Definir a propriedade BufferTempStoragePath para a tarefa de fluxo de dados. Quando é enviada uma notificação de recurso de memória baixa para o motor de fluxo de dados, o motor de fluxo de dados vai escrever as memórias intermédias de dados para os directórios que são designados na propriedade BufferTempStoragePath .
  • Mais de 65.536 ficheiros temporários de memórias intermédias de dados são escritos os directórios.
Nota Neste cenário raros, receberá mensagens de erro diferente.
Se especificar pastas adicionais na propriedade BLOBTempStoragePath ou na propriedade BufferTempStoragePath e volte a executar o pacote SSIS, localizar os caminhos adicionais são ignorados e o pacote SSIS ainda não é executado com êxito.

Causa

As pastas designadas no BufferTempStoragePath ou BLOBTempStoragePath propriedades contêm os ficheiros temporários. Estes ficheiros temporários denominam-se num intervalo de DTS.tmp através de DTSFFFF.tmp. O intervalo numérico é de 0 x 0 a 0xFFFF. Por exemplo, nomes de ficheiro temporário possível incluem DTS.tmp DTS1.tmp… e DTSFFFF.tmp. Existem 65.536 nomes de ficheiro possíveis no total. Quando existem mais de 65.536 ficheiros, SSIS poderá ficar sem nomes de ficheiro e accionar os erros que são mencionados na secção Sintomas.

Resolução

A correcção para este problema foi disponibilizada pela primeira vez na actualização cumulativa 5 para o SQL Server 2005 Service Pack 3. Para obter mais informações sobre este pacote de actualização cumulativa, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
972511   (http://support.microsoft.com/kb/972511 /LN/ ) Pacote de actualização cumulativa 5 para o SQL Server 2005 Service Pack 3
Nota Uma vez que as compilações são cumulativas, cada nova versão de correcção contém todas as correcções e todas as correcções de segurança incluídas com o SQL Server 2005 anterior corrigir lançamento. A Microsoft recomenda que considerar a aplicação a versão de correcção mais recente que contenha esta correcção. Para obter mais informações, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
960598  (http://support.microsoft.com/kb/960598/LN/ ) Cria o SQL Server 2005 que foram disponibilizadas após o lançamento do SQL Server 2005 Service Pack 3
Microsoft SQL Server 2005 são criadas correcções para service packs do SQL Server específicos. Tem de aplicar uma correcção do SQL Server 2005 Service Pack 3 para uma instalação do SQL Server 2005 Service Pack 3. Por predefinição, qualquer correcção fornecida num service pack do SQL Server está incluída no próximo service pack do SQL Server.

Como contornar

Para contornar este problema, utilize um dos seguintes métodos:

Método 1

Aumente o tamanho da memória intermédia, definindo a propriedade DefaultBufferSize ao valor máximo de 104,857,600.

Nota Se utilizar este método, poderá existir mais de consumo de memória quando executa o pacote SSIS.

Método 2

A fase de estruturação, tente reduzir transformações bloqueios ou gargalos jusante após o ponto onde as colunas BLOB são introduzidas para a tarefa de fluxo de dados. Este método pode reduzir a possibilidade de que irá ser atingido o limite.

Ponto Da Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Mais Informação

Depois de aplicar esta correcção, são resolvidos os seguintes dois problemas:
  • Permitirão que as memórias intermédias para spill para os directórios adicionais que são especificados nas propriedades do BLOBTempStoragePath ou BufferTempStoragePath vários caminhos delimitados por ponto e vírgula.

    Se especificar múltiplas pastas nas propriedades do BLOBTempStoragePath ou BufferTempStoragePath como “ C:\temp1; D:\temp2”and se existir problema quando SSIS tenta aceder a primeira pasta, a segunda pasta será utilizada. Os ficheiros temporários não são distribuídos pelos caminhos de pasta adicional, excepto se for encontrado um problema com a primeira pasta. Se não for um erro fatal, SSIS irá utilizar a pasta seguinte na lista com êxito.

    No entanto, se a primeira pasta ficar sem espaço em disco, serão registados erros graves. Além disso, SSIS correctamente não é possível ignorar o erro e utilize a seguinte pasta.
  • SSIS não será executado fora de nomes. O novo padrão de atribuição de nomes de ficheiro dinamicamente gera um GUID aleatório para cada nome de ficheiro temporário. Iniciar novos nomes de ficheiro com os três prefixos seguintes:
    • DTT : DTT os ficheiros temporários são ficheiros de teste. Estes ficheiros são utilizados para garantir que o directório temporário pode ser acedido e escrito antes de dados são guardados no directório.
    • DTB : DTB os ficheiros temporários são ficheiros temporários do BLOB. Estes ficheiros são utilizados quando os tipos de dados DT_TEXT, DT_NTEXT ou DT_IMAGE são processados numa tarefa de fluxo de dados.
    • DTS : DTS os ficheiros temporários são ficheiros temporários de comutação de memória intermédia.
    Seguem-se exemplos de novos nomes de ficheiro temporário:
    .Tmp DTT {0004E1F9-8058-444 D - 9DB0 - DB9888331E20}
    .Tmp DTB {001414F4-54AE-49E2-9FCE-09CFFEF974E2}
    .Tmp DTS {003B57D9-A239-41CA-B478-F577E26F0DBB}

Referências

Para obter mais informações sobre o modelo de assistência incremental para o SQL Server, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
935897  (http://support.microsoft.com/kb/935897/ ) Um modelo de assistência incremental está disponível a equipa do SQL Server para proporcionar correcções para problemas comunicados
Para obter mais informações sobre como obter o SQL Server 2005 Service Pack 3, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
913089  (http://support.microsoft.com/kb/913089/ ) Como obter o service pack mais recente para o SQL Server 2005
Para obter mais informações sobre as novas funcionalidades do SQL Server 2005 Service Pack 3 (SP3) e sobre os melhoramentos no SQL Server 2005 SP3, visite o seguinte Web site da Microsoft:
http://go.microsoft.com/fwlink/?LinkId=131442 (http://go.microsoft.com/fwlink/?LinkId=131442)
Para obter mais informações sobre o esquema de atribuição de nomes para as actualizações do SQL Server, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
822499  (http://support.microsoft.com/kb/822499/ ) Novo esquema de atribuição de nomes de ficheiros para pacotes de actualização de software do Microsoft SQL Server
Para obter mais informações sobre a terminologia de actualização de software, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
824684  (http://support.microsoft.com/kb/824684/ ) Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL 2005 Server Workgroup
Palavras-chave: 
kbmt kbsurveynew kbhotfixrollup kbfix kbpubtypekc kbqfe kbexpertiseadvanced kbhotfixserver KB972365 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 972365  (http://support.microsoft.com/kb/972365/en-us/ )
Partilhar
Opções de suporte adicionais
Fóruns de Suporte da Comunidade Microsoft
Contacte-nos directamente
Encontre um parceiro certificado Microsoft
Loja Microsoft