Iniciar sessão com a Microsoft
Iniciar sessão ou criar uma conta.
Olá,
Selecione uma conta diferente.
Tem várias contas
Selecione a conta com a qual pretende iniciar sessão.

Depois de aplicar esta atualização, tem de adicionar a bandeira de traço -T8075 como parâmetro de arranque para permitir esta alteração.

Sintomas

Quando executa uma consulta numa versão de 64 bits do Microsoft SQL Server 2012, recebe uma mensagem de erro fora de memória que se assemelha ao seguinte no registo de erro do SQL Server:

Páginas de atribuição falhadas: FAIL_PAGE_ALLOCATION 513

As consultas demoram muito tempo a terminar a execução e a encontrar SOS_MEMORY_TOPLEVELBLOCKALLOCATOR espera. Quando examina os seguintes pontos de informação, verá que existe um espaço de endereço virtual muito baixo disponível:

  • DBCC MEMORYSTATUS - Secção de Contagens de Processo/Sistema - Memória Virtual Disponível

  • DMV: sys.dm_os_process_memory - virtual_address_space_available_kb de colunas

Estes valores começam em torno de 8 terabytes (TB) num processo x64 e continuam a descer e a chegar a alguns gigabytes (GB).  Quando se está na fase em que o espaço de endereço virtual disponível é muito baixo, as consultas que tentam realizar a atribuição de memória também podem encontrar um tipo de espera de CMEMTHREAD. Os seguintes pontos de dados continuarão a aumentar ao longo do tempo:

  • DMV: sys.dm_os_process_memory e sys.dm_os_memory_nodes - virtual_address_space_reserved_kb de colunas

  • DBCC MEMORYSTATUS - Secção de Gestor de Memória - VM Reservado

Estes valores normalmente aumentam em múltiplos do valor "max servidor memory" até quase 8 TB.

Causa

Quando o processo do SQL Server chegou ao estado em que a Memória Total do Servidor = Memória do Servidor Alvo = memória máxima do servidor, existem políticas no gestor de memória do SQL Server para permitir que novas alocações solicitem várias páginas de 8 KB para serem sucedidas temporariamente. O padrão de atribuição repetido sob tal condição pode causar fragmentação dos blocos de memória e o consumo do espaço de endereço virtual. Se este processo se repetir muitas vezes, o espaço de endereço virtual SQL Server estará esgotado, e irá notar os sintomas mencionados anteriormente.

Resolução

Informação de atualização cumulativa

O problema foi corrigido pela primeira vez na seguinte atualização cumulativa do SQL Server.

 

Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Recomendamos que descarregue e instale as últimas atualizações cumulativas para o SQL Server:

Este hotfix impede tanto a saída da memória como a redução contínua do espaço de endereço virtual disponível que poderá experimentar.

Estado

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

Mais Informações

  • O Windows 2012 R2 permite que o espaço de endereço virtual cresça até 128 TB. Portanto, não pode notar este problema em ambientes R2 do Windows 2012. Para obter mais informações, consulte o seguinte tópico no Windows Dev Center:Limites de memória para versões do Windows e do Windows Server

  • Se vir um crescimento contínuo no espaço de endereços virtuais mesmo depois de aplicar a correção, pode determinar quais as consultas ou operações que estão a solicitar grandes pedaços de memória utilizando o Page_allocated evento alargado. Um guião de amostra é assim:

    CREATE EVENT SESSION [memory_tracking] ON SERVERADD EVENT sqlos.page_allocated(    ACTION(package0.callstack,sqlos.cpu_id,sqlos.task_address,sqlos.worker_address,sqlserver.database_id,sqlserver.query_hash,sqlserver.request_id,sqlserver.session_id,sqlserver.sql_text)    WHERE ([number_pages]>(1)))ADD TARGET package0.event_file(SET filename=N'E:\Data\MSSQL11.MSSQLSERVER\MSSQL\Log\memory_tracking.xel')WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=PER_CPU,TRACK_CAUSALITY=OFF,STARTUP_STATE=OFF)GO

    Normalmente, trata-se de backups de registos e operações de manutenção de índices, que ocorrem frequentemente.

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.

Estas informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?
Ao selecionar submeter, o seu feedback será utilizado para melhorar os produtos e serviços da Microsoft. O seu administrador de TI poderá recolher estes dados. Declaração de Privacidade.

Obrigado pelo seu feedback!

×