Resolvendo o incidente do S3 com correções e descontos
Ontem à tarde, infelizmente, tivemos um incidente que durou aproximadamente 90 minutos. Esse incidente foi causado por um bug que nós mesmos introduzimos no sistema.
Alguns clientes estavam tendo dificuldades para concluir Assemblies que continham um grande número de arquivos (> 100). Ao tentar resolver isso, introduzimos sem querer um bug que fazia com que os arquivos de resultado no S3 fossem sobrescritos pelos arquivos enviados originalmente. Isso, obviamente, é algo muito ruim. Nossa suíte de testes não detectou o problema porque, para isolá-la de instabilidades do S3 e para que ela rodasse mais rápido (com todos os testes de codificação, ela já leva quase 30 minutos para rodar), deixamos de enviar os arquivos de resultado para o S3. Tínhamos casos separados para testar nossa integração com o S3, mas, infelizmente, eles também não detectaram esse problema.
Percebemos o problema em produção e publicamos um hotfix em até 30 minutos. No entanto, quando tudo voltou ao normal, publicamos outro recurso que não incluía esse hotfix. Como resultado, esse problema voltou a nos afetar (ou melhor, a afetar você). Não devia ser mesmo o nosso dia de sorte.
Se você está entre as pessoas afetadas por esse problema, abra um ticket de suporte e vamos ajudar a reexecutar todas as suas Assemblies afetadas. Além disso, também vamos oferecer um desconto na sua fatura de fevereiro. Vamos manter os arquivos temporários necessários por uma semana (em vez das 24 horas habituais).
Por fim, gostaríamos de pedir desculpas por isso. A culpa foi inteiramente nossa e estamos muito tristes por não termos conseguido oferecer um serviço tão robusto quanto aquele do qual normalmente nos orgulhamos. Já tomamos as medidas necessárias para que isso nunca mais aconteça. De agora em diante, a suíte de testes também vai salvar todos os arquivos de resultado no S3. Talvez não seja a forma mais limpa de rodar testes, mas isso vai garantir que nossos testes se pareçam o máximo possível com a produção. No fim das contas, essa é a nossa maior prioridade.
