Ir para conteúdo
  • Cadastre-se

dev botao

Novo "Bug do Milênio" em pleno 2022


  • Este tópico foi criado há 830 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Consultores

A falha conhecida como “bug do milênio” teve como origem a configuração de datas em sistemas informatizados. A fim de economizar espaço na memória, um formato de dia / mês / ano foi usado no qual dois dígitos eram aplicados para cada seção. Desta forma, se fosse 26/03/98, o sistema entendia que se tratava do ano de 1998.

Porém, o problema ocorria com a chegada do ano 2000, já que os computadores interpretariam o “00” do final da data como o ano de 1900. Portanto, os sistemas computacionais, em vez de continuar com uma linha de tempo progressiva, voltariam 100 anos no tempo, gerando um efeito cascata que levaria a falhas nos sistemas de equipamentos primários.

Agora em 2022 alguns serviços também foram afetados com o problema de data, como por exemplo o Microsoft Exchange, que é o serviço de emails, apresentou um problema que paralisou toda a sua plataforma de mensagens, o detalhe curioso não é questão de vulnerabilidade, e sim, uma incompatibilidade no sistema de antivirus que utilizava como valor máximo uma sequencia numérica int32 (2.147.483.648), o dia 01/01/2022 representa (2.201.010.001) sendo um valor maior que o suportado, nesse caso necessário um int64 (9.223.372.036.854.775.807);

Outras aplicações também poderão apresentar problemas com valores baseados em datas que utilizarem variáveis do tipo integer / int32

 

Boletim Microsoft Email Stuck in Exchange On-premises Transport Queues - Microsoft Tech Community

  • Curtir 8
  • Obrigado 1
  • Haha 3
  • Confuso 1
Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Tivemos alguns relatos de usuários com problema semelhante..

Ocorre que se tentar usar a Data completa, em um Int32 ocorrerá o problema... Exemplo:

NumeroLote := StrToInt(FormatDateTime('yymmddhhnn', NOW));

 

https://wiki.freepascal.org/Variables_and_Data_Types

  • Curtir 2
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Nos fontes do ACBr, aplicamos ampla revisão, para que todas as propriedades idLote, agora sejam Int64...

Mas compreenda que se você usa a mascara FormatDateTime('yymmddhhnn', NOW), para gerar um Sequencial dinâmico, vários outros pontos do seu Software, precisarão ser revistos...

  • Curtir 6
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...