.

Friday, December 17, 2010

TCP Chimney Offload e SQL Server Integration Services.

Atuando em um cliente, me deparei  com um JOB de DTS que executava com erro.
Inicialmente desenhamos a topologia dos servidores envolvidos:


Acompanhei com o NETMON e identificamos que a comunicação entre os servidores estava saudável a nível de rede e sistema operacional, logo não temos uma perda total dos pacotes mas uma intermitência e o log de saída  do DTS evidencia isto:

Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred\
. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult:0x80004005 Description: "Protocol error in TDS stream".
An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult:0x80004005 Description: "Communication link failure".
An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult:0x80004005 Description: "TCP Provider: An existing connection was forcibly closed by the remote host.".
An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult:0x80004005 Description: "Communication link failure".

Temos habilitado nos servidores o TCP Chimney Offload que pode ocasionar este tipo de falha.
Logo: Recomendamos desabilitar este item nos servidores SQL Inicialmente no nó inactivo virar o nó testar e caso funcione executar depois nos outros nós.
Via: Netsh int ip set chimney DISABLED
OU
Caminho: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Chave: EnableTCPChimney := 0x0
Seguem alguns links sobre os alertas:
[]'s.

No comments: