💻 PYTHON Backend Frontend
61.2K subscribers
409 photos
72 videos
97 links
🔥 ЕЩЁ БОЛЬШЕ КОНТЕНТА:
t.me/addlist/2EjwwexCDeRlNWNh

💬 ЧАТЫ ДЛЯ ОБЩЕНИЯ:
t.me/addlist/1ZoIIyAsAgkzYjEx

🌐 Реклама / Сотрудничество: @DealAds
Download Telegram
Все пять safety-свойств Raft прошли — а две реплики всё равно разошлись

Реализацию Raft на TypeScript прогнали через сидированную симуляцию: каждый тик, задержка сообщения и падение узла жёстко задаются сидом. Это делает баги воспроизводимыми — запустил тот же сид и получил ту же картину.

И вот на двадцать пятом прогоне две реплики применили разные значения. При этом формально все правила алгоритма выполнялись — ни одно safety-свойство не нарушилось.

Самое любопытное тут не сам баг, а то, какая именно проверка его поймала. И вопрос, который из этого вырастает: а откуда вообще известно, что остальные проверки хоть на что-то смотрят, а не просто молча проходят?

Зелёные тесты — ещё не гарантия того, что они реально что-то тестируют

Подписывайся, чтобы не пропустить разборы багов и внутренностей распределённых систем — здесь выходит регулярно

#Raft #TypeScript #тестирование
😁32🎉2👍1