Conexão do MS SQL Server redefinida no AWS se a coluna tiver mais de 39 kb

1

Nós migramos um aplicativo que faz alguma inteligência comercial, por isso gerencia muitos dados. Este aplicativo funciona perfeitamente em nosso próprio ambiente, mas ao executar na AWS, recebemos muitos problemas de "redefinição de conexão".

Identificamos que uma consulta recupera dados de uma tabela que possui uma coluna com um conteúdo XML. A coluna é VARBINARY (MAX) e o conteúdo varia muito em tamanho. Se não retornarmos essa coluna, o problema desaparece. Investigando um pouco mais, somente quando o conteúdo desta coluna for próximo ou maior que 40kb, nós temos a conexão redefinida.

Estamos executando o SQL Server 2012 Web Edition e acessando-o através do JDBC. Se nos conectarmos através do SQL Server Management Studio, o problema persistirá, portanto, não é um problema do JDBC ou do nosso aplicativo.

Esse problema é muito semelhante a outra pergunta , mas no nosso caso conseguimos identificar que o faz apenas quando o conteúdo da coluna está próximo ou acima de 40kb.

MS especifica um limite de 2 GB em VARBINARY (max) , por isso deve funcionar .

Existem limites na AWS? Em nosso ambiente, usamos o SQL Server 2012 Standard; no AWS é Web Edition, mas nenhuma fonte informa que há limites no tamanho das colunas.

ATUALIZAÇÃO: executamos a consulta na mesma máquina usando o SQL Server Management Studio (anteriormente era remoto) e a consulta retornou ok, mesmo com resultados muito maiores! Então o problema é quando rodando no AWS. A máquina que faz o acesso também está na AWS, mas outra caixa.

UPDATE 2: consulta de simulação simples:

SELECT CONVERT(VARBINARY(MAX),REPLICATE(CONVERT(VARCHAR(MAX),'A'), 500000))

Às vezes, valores menores como 5000 causam o problema, mas são intermitentes. Ao informar 500000, você sempre perde a conexão. Nada é acrescentado aos logs do SQL Server.

    
por Fernando M. Pinheiro 28.03.2014 / 18:03

1 resposta

0

Tente ajustar o MTU da sua caixa do Windows: ping -f -l [número de teste da MTU] [outro IP do servidor]

Esta postagem explica como usar esta dica: link

Espero que esta ajuda!

    
por 28.03.2014 / 22:12