Этот пост снова не про SR :)
Так вот, с школьной скамьи (ну почти, практически с первого собеседования в дату или бек) спрашивают про ACID в базах, и везде крутится речь про транзакции. И вроде бы из общения со всеми базами данных мы знаем, что если у нас появилась ошибка, то значит что транзакция не была закомичена. Как всегда, например, в mysql надо читать мелкий шрифт в
В бд отправляется запрос на запись, он не укладывается в таймаут на клиенте и клиент отпадает. БД при этом завершает запрос и успешно завершает транзакцию. В клиенте у нас фейл, по факту успех.
А при чем тут аналитика? Та самая realtime аналитика на событийке, в которой события отправляются после успешной транзакции в бд. А у нас не отправляются, потому что запись в бд прошла не успешно. Но данные там появились и вовремя. И тут иногда думаешь, что CDC не так уж и плоха. Какой-то замкнутый круг это все: от батчей уходишь на cdc, от cdc на событийку, от событийки на батчи - и все это сверками, сверками поверху.
