Публикация была переведена автоматически. Исходный язык: Русский
Никита, старший фронтенд-инженер в Ozon Tech, вместе со своей командой разрабатывает кабинет рекламодателя. Однажды команда попыталась обновить версию Node.js, после чего начали рандомно падать тесты в CI/CD. Как выяснилось позже — из-за нехватки памяти. Так как над проектом трудятся 15 фронтенд-разработчиков, эта проблема сильно замедляла процесс выкатки, и разработчикам приходилось вручную перезапускать тесты, пока они не начинали проходить, что также ухудшало developer experience.
Ребята быстро решили проблему откаткой версии, но хотелось докопаться до того, из-за чего это произошло. В этой статье мы увидим, как минорное обновление версии сможет породить баг, который затянется на два года и вовлечёт в себя команды Jest, Node.js и V8. Читать полностью
Никита, старший фронтенд-инженер в Ozon Tech, вместе со своей командой разрабатывает кабинет рекламодателя. Однажды команда попыталась обновить версию Node.js, после чего начали рандомно падать тесты в CI/CD. Как выяснилось позже — из-за нехватки памяти. Так как над проектом трудятся 15 фронтенд-разработчиков, эта проблема сильно замедляла процесс выкатки, и разработчикам приходилось вручную перезапускать тесты, пока они не начинали проходить, что также ухудшало developer experience.
Ребята быстро решили проблему откаткой версии, но хотелось докопаться до того, из-за чего это произошло. В этой статье мы увидим, как минорное обновление версии сможет породить баг, который затянется на два года и вовлечёт в себя команды Jest, Node.js и V8. Читать полностью