В пʼятницю на проєкті було весело - розробник вирішив почистити колекцію логів в #mongodb, яка має розмір пару TB та видалив зайві індекси. Пізніше виявилось, що при старті бекенд побачив відсутні індекси та почав створювати їх. Це призвело до жорстокого IO навантаження на усіх нода кластеру. Швидко видалили ці індекси зі схеми, але на секондарі інстансі процесс ребілда індексів не зупинився, навіть після примусового opKill(). #ChatGPT порадив нічого не робити, а просто чекати, але дев лід наполягав та я перезапустив монгу. Виявилось, що ребілд індекса був частиною транзакція, яка записалась як не виконана, тому mongod увійшов в фазу startup та почав завершувати транзакцію та рібілдить індекс.
Як результат, кластер залишився без одного секондарі, тому що монга відкриває порт тільки після завершення фази startup. Прийшлось чекати десь 8 годин поки завершиться транзакція.
Можу сказати, що чатжпт дає досить толкові та корисні рекомендації по обслугуванню та вирішення проблем кластера mongodb