Cómo abordamos el incidente de S3 con correcciones y descuentos
Ayer por la tarde tuvimos, lamentablemente, un incidente que duró aproximadamente 90 minutos. Este incidente fue causado por un error que nosotros mismos introdujimos en el sistema.
Algunos clientes tenían dificultades para completar Assemblies que contenían una gran cantidad de archivos (> 100). Al intentar solucionarlo, introdujimos sin querer un error que provocaba que los archivos de resultado en S3 fueran sobrescritos por los archivos subidos originalmente. Eso, por supuesto, es algo muy malo. Nuestra suite de pruebas no detectó esto porque, para aislar nuestra suite de los problemas puntuales de S3 y para que se ejecutara más rápido (con todas las pruebas de encoding, ya tarda casi 30 minutos en ejecutarse), omitíamos el envío de los archivos de resultado a S3. Sí teníamos casos separados para probar nuestra integración con S3, pero lamentablemente no detectaron este problema.
Detectamos el problema en producción y desplegamos un hotfix en 30 minutos. Sin embargo, cuando todo volvió a la normalidad, desplegamos otra funcionalidad que no incluía dicho hotfix. Como consecuencia, nosotros (o, más bien, tú) volvimos a vernos afectados por este problema. Parece que no era nuestro día de suerte.
Si estás entre las personas afectadas por este problema, abre un ticket de soporte, por favor, y te ayudaremos a reejecutar todas tus Assemblies afectadas. Además, también te daremos un descuento en tu factura de febrero. Conservaremos los archivos temporales necesarios durante una semana (en lugar de las 24 horas habituales).
Por último, queremos pedir disculpas por esto. Ha sido completamente culpa nuestra y lamentamos mucho no haber podido ofrecer un servicio tan robusto como el que solemos enorgullecernos de brindar. Ya hemos tomado las medidas necesarias para que esto no vuelva a ocurrir. De ahora en adelante, la suite de pruebas también guardará todos los archivos de resultado en S3. Puede que no sea la forma más limpia de ejecutar pruebas, pero así nos aseguraremos de que nuestras pruebas se parezcan lo máximo posible a producción. En última instancia, eso es lo que tiene la máxima prioridad para nosotros.
