Artigo: 816004 - Última revisão: terça-feira, 12 de Setembro de 2006 - Revisão: 4.5

Descrição da mensagem de erro com o ID de evento 50

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

Este artigo poderá conter hiperligações para conteúdo em inglês (ainda não traduzido).

Quando são escritas informações no disco físico, as seguintes mensagens de ID de evento poderão ser registadas no registo de eventos do sistema:
ID do evento: 50
Tipo de evento: Aviso (Warning)
Origem do evento: Ftdisk
Descrição: {Dados de gravação retardada perdidos} O sistema tentava transferir dados de arquivos das memórias intermédias para \Device\HarddiskVolume4. A operação de gravação falhou talvez apenas alguns dados tenham sido gravados no arquivo. ({Lost Delayed-Write Data} The system was attempting to transfer file data from buffers to \Device\HarddiskVolume4. The write operation failed, and only some of the data may have been written to the file.)
Dados:
0000: 00 00 04 00 02 00 56 00
0008: 00 00 00 00 32 00 04 80
0010: 00 00 00 00 00 00 00 00
0018: 00 00 00 00 00 00 00 00
0020: 00 00 00 00 00 00 00 00
0028: 11 00 00 80
- e -
ID do evento: 26
Tipo de evento: Informações (Information)
Origem do evento: Application Popup
Descrição: Windows - Falha na gravação em atraso : O Windows não conseguiu guardar todos os dados para o ficheiro \Device\HarddiskVolume4\Programas\Microsoft SQL Server\MSSQL$INSTANCETWO\LOG\ERRORLOG. Os dados foram perdidos. Este erro pode ter sido causado por uma falha no hardware do seu computador ou por ligação à rede.
Tente guardar este ficheiro noutro local.
(Windows - Delayed Write Failed : Windows was unable to save all the data for the file \Device\HarddiskVolume4\Program Files\Microsoft SQL Server\MSSQL$INSTANCETWO\LOG\ERRORLOG. The data has been lost. This error may be caused by a failure of your computer hardware or network connection.
Please try to save this file elsewhere.
)
Estas mensagens de ID de evento têm exactamente o mesmo significado e são geradas pelas mesmas razões. No que diz respeito ao assunto abordado neste artigo, apenas é descrita a mensagem com o ID de evento 50.

Nota: o dispositivo e o caminho da descrição bem como os dados hexadecimais específicos variam.

Mais Informação

É registada uma mensagem com o ID de evento 50 se ocorrer um erro genérico quando o Windows tentar escrever informações no disco. Este erro ocorre quando o Windows tenta consolidar dados do administrador de cache do sistema de ficheiros (não da cache ao nível do hardware) no disco físico. Este comportamento está relacionado com a gestão de memória do Windows. Por exemplo, se um programa enviar um pedido de escrita, este é colocado em cache pelo administrador de cache e o programa é informado que a escrita foi efectuada com êxito. Posteriormente, o administrador de cache tenta efectuar a escrita lenta dos dados no disco físico. Quando o administrador de cache tenta consolidar os dados no disco, ocorre um erro durante a escrita dos mesmos e os dados são limpos (flushed) da cache e eliminados. A cache de actualização posterior optimiza o desempenho do sistema, mas pode ocorrer perda de dados e de integridade de volume como resultado de falhas do tipo "dados de gravação retardada perdidos".

É importante relembrar que nem todas as E/S são colocadas em memória intermédia pelo administrador de cache. Os programas podem definir um sinalizador FILE_FLAG_NO_BUFFERING que tem precedência sobre o administrador de cache. Quando o SQL efectua escritas críticas numa base de dados, este sinalizador é definido para garantir que a transacção é concluída directamente no disco. Por exemplo, escritas não críticas em ficheiros de registo colocam as E/S em memória intermédia para optimizar o desempenho global. Uma mensagem com o ID de evento 50 nunca resulta de uma E/S não colocada em memória intermédia.

Existem várias origens diferentes para uma mensagem com o ID de evento 50. Por exemplo, uma mensagem registada com o ID de evento 50 de uma origem MRxSmb ocorre se existir um problema de conectividade de rede com o redireccionador. Para evitar a execução de passos incorrectos de resolução de problemas, certifique-se de que consulta a mensagem com o ID de evento 50 para confirmar que está relacionada com um problema de E/S de disco, o qual é abordado neste artigo.

Uma mensagem com o ID de evento 50 é semelhante a uma mensagem com o ID de evento 9 e o ID de evento 11. Embora o erro não seja tão crítico como o indicado nas mensagens com o ID de evento 9 e o ID de evento 11, pode utilizar os mesmos procedimentos da resolução de problemas de uma mensagem com o ID de evento 50 para resolver mensagens com os IDs de evento 9 e 11. No entanto, lembre-se que qualquer elemento da pilha pode provocar dados de gravação retardada perdidos, como controladores de filtros e controladores "mini-port".

Para obter mais informações, clique nos números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
154690   (http://support.microsoft.com/kb/154690/ ) Como resolver mensagens de erro de ID de evento 9, ID de evento 11 e ID de evento 15
259237  (http://support.microsoft.com/kb/259237/PT/ ) Troubleshooting Event ID 9, 11, and 15 on Cluster Servers
Pode utilizar os dados binários associados a um erro de "DISCO" (indicado pelas mensagens de erro com o ID de evento 9, 11, 51 ou outras) para o ajudar a identificar o problema.

Como interpretar a secção de dados de uma mensagem com o ID de evento 50

Quando interpreta a secção de dados do exemplo da mensagem com o ID de evento 50 incluída na secção "Sumário", verifica que a tentativa de efectuar uma operação de escrita falhou porque o dispositivo estava ocupado e os dados foram perdidos. Esta secção descreve como interpretar esta mensagem de ID de evento 50.

A tabela que se segue descreve o significado de cada desvio desta mensagem:
Reduzir esta tabelaExpandir esta tabela
DesvioDimensãoValores
0x002Não utilizado
0x022Tamanho dos dados sobre o estado da memória = 0x0004
0x042Número de cadeias = 0x0002
0x062Desvio da posição das cadeias
0x08 2 Categoria do evento
0x0c4Código de erro NTSTATUS = 0x80040032 = IO_LOST_DELAYED_WRITE
0x108Não utilizado
0x188Não utilizado
0x208Não utilizado
0x284Código de erro de estado do NT

Secções-chave a interpretar

O código de erro

No exemplo da secção "Sumário", o código de erro encontra-se listado na segunda linha. Esta linha começa com "0008:" e inclui os últimos quatro bytes nesta linha:
0008: 00 00 00 00 32 00 04 80
Neste caso, o código de erro é 0x80040032. O código seguinte é o código do erro 50 e é o mesmo para todas as mensagens com o ID de evento 50:
IO_LOST_DELAYED_WRITEWARNING
Nota: ao converter os dados hexadecimais da mensagem de ID de evento no código de estado, lembre-se que os valores são representados no formato little-endian.

O disco de destino

Pode identificar o disco no qual tentou escrever dados utilizando a ligação simbólica listada na unidade, na secção "Descrição" da mensagem com o ID de evento, por exemplo: \Device\HarddiskVolume4. Para obter informações adicionais sobre como identificar a unidade, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
159865  (http://support.microsoft.com/kb/159865/PT/ ) How to Distinguish a Physical Disk Device from an Event Message
O código de estado final

O código de estado final representa as informações mais importantes de uma mensagem com o ID de evento 50. Este é o código de erro que é devolvido quando foi efectuado o pedido de E/S e é a origem principal das informações. No exemplo da secção "Sumário", o código de estado final é listado como 0x28, a sexta linha, que começa com "0028:" e inclui os únicos quatro octetos nesta linha:
0028: 11 00 00 80
Neste caso, o estado final é igual a 0x80000011. Este código de estado mapeia para STATUS_DEVICE_BUSY e implica que o dispositivo esteja actualmente ocupado.

Nota: ao converter os dados hexadecimais da mensagem de ID de evento 50 no código de estado, lembre-se que os valores são representados no formato little-endian. Uma vez que o código de estado é o único tipo de informações que pretende obter, poderá ser mais fácil visualizar os dados em WORDS do que em bytes. Se visualizar neste formato, os bytes serão apresentados no formato correcto e os dados serão mais facilmente interpretados.
Para o fazer, clique em Palavras (Words) na janela Propriedades de Evento (Event Properties). Na vista de dados por palavras, o exemplo da secção "Sintomas" será apresentado da seguinte forma:
Dados:
() Bytes (.)
Palavras 0000: 00040000 00560002 00000000 80040032 0010: 00000000 00000000 00000000 00000000 0020: 00000000 00000000 80000011
Para obter uma lista dos códigos de estado do Windows NT, consulte NTSTATUS.H no Windows Software Developers Kit (SDK).

A informação contida neste artigo aplica-se a:
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
Palavras-chave: 
KB816004