4 pontos por GN⁺ 2024-03-01 | 1 comentários | Compartilhar no WhatsApp

Correção do bug no sistema de pagamentos concluída

  • Depois de um trabalho emergencial realizado nesta manhã, a equipe de pagamentos corrigiu um bug que cobrava incorretamente dos assinantes mensais por um dia extra.
  • Todos os conjuntos de testes estão passando no momento, e o QA planeja validar a correção em 2028, após o que o SRE fará uma análise pós-incidente.

Opinião do GN⁺

  • Este caso de correção de bug destaca a importância de QA (Quality Assurance) no desenvolvimento de software. Bugs que não são detectados pelo processo de QA podem causar problemas em ambiente de produção, afetando diretamente a satisfação do cliente.
  • O procedimento de análise pós-incidente (postmortem) é uma etapa importante para analisar a causa de falhas de sistema ou ocorrência de bugs e evitar recorrências. Por meio dele, a equipe pode melhorar sua capacidade de resolver problemas e preparar medidas preventivas para que problemas semelhantes não voltem a acontecer.
  • Outros sistemas de pagamento que oferecem funcionalidades semelhantes incluem Stripe e PayPal, cada um com seus próprios recursos de segurança e estabilidade. Antes de usar, é recomendável comparar as características e os custos de cada serviço.
  • Entre os pontos a considerar ao adotar essa tecnologia estão a estabilidade do sistema, a experiência do usuário e a eficiência de custos. Além disso, também são importantes uma resposta rápida em caso de falha e uma comunicação transparente.
  • Os benefícios de escolher essa tecnologia incluem recuperar a confiança do cliente e melhorar a estabilidade do sistema, mas, por outro lado, podem surgir custos de curto prazo, como interrupções no trabalho causadas por correções emergenciais de bugs.

1 comentários

 
GN⁺ 2024-03-01
Comentários do Hacker News
  • História que um amigo ouviu na China: havia um bug na parte de cálculo de idade de um app de agendamento de certidão de casamento, em que, ao subtrair do ano a idade mínima legal de 22 anos, o resultado era a data inexistente de 29 de fevereiro de 2002. O app tentou comparar essa data com a data de nascimento do usuário, mas, por causa de um código de tratamento de erro que presumiu que todo erro tinha ocorrido na comparação, recusou todos os agendamentos de certidão de casamento dizendo que os usuários eram jovens demais para se casar.
  • Há um produto que usa a API do ChatGPT e utiliza a versão 3.5 Turbo. Algumas consultas incluem datas e, em vez de retornar texto normalmente, hoje ele retornou erro por achar que 29 de fevereiro de 2024 era uma data inválida. Às vezes isso pode ser reproduzido com facilidade pela interface web; primeiro ele diz que é uma data inválida e depois, ao explicar, percebe o erro e ocasionalmente se corrige sozinho.
  • A Cloudflare enviou uma fatura hoje, e o nome do arquivo PDF anexado era cloudflare-invoice-1970-01-01.pdf.
  • Em lojas da ICA na Suécia, não foi possível aceitar pagamentos com cartão na manhã de quinta-feira. Em vez disso, era preciso pagar em dinheiro, via Swish ou pelo app. A causa do problema foi um problema interno no sistema de pagamentos da ICA causado pelo dia extra de fevereiro, ou seja, o dia bissexto. A ICA é a maior rede de supermercados da Suécia.
  • Alguns softwares gravam dados por data em diretórios rotativos e, durante uma depuração manual em um sistema de testes, houve falha ao criar o diretório pela primeira vez em 29 de fevereiro UTC. Descobriu-se que era por falta de espaço em disco, mas por mais de uma hora a convicção era de que se tratava de um bug de ano bissexto.
  • Existe um bot que publica no Mastodon o registro diário do clima de San Francisco. Hoje ele não publicou como previsto. Ele consulta as temperaturas máxima e mínima e a precipitação do dia correspondente, de 1875 até hoje, mas ocorreu um erro porque não existe a data 29 de fevereiro de 1875.
  • Ao contrário! Alguns serviços que não dão parabéns em anos não bissextos deram parabéns hoje. Nasci em 29 de fevereiro.
  • Como exemplo específico, Theatrhythm Final Bar Line, um jogo rítmico de Final Fantasy, não tratou a forma de lidar com o dia bissexto e hoje impediu as pessoas de jogar. Dá para iniciar o jogo, mas não é possível jogar de fato.
  • Tenho um app Rails 6 e há um teste que espera que time_ago_in_words(1.year.from_now) retorne "cerca de 1 ano". O teste falhou e achei que fosse um teste instável, mas consegui reproduzir localmente. Isso porque, ao executar esse código no dia bissexto, ele retorna "quase 1 ano". Dá para testar no console do Rails.
  • Em alguns postos de combustível da Nova Zelândia, as bombas não funcionaram na quinta-feira devido a um "glitch de ano bissexto" no software de pagamento. Os postos e a fornecedora do serviço de pagamento confirmaram isso.