Как Сбербанк и Окей оставили меня без денег на новый год

Прочитал пост Лукойл берёт реванш и решил поделиться своей историей. Позавчера отправился в Окей, дабы прикупить к столу всякого. Во время оплаты покупки банковской картой касса зависла, не выдав чека. После того как касса загрузилась, кассир предложила мне оплатить покупку второй раз, что меня очень удивило, так как в первую попытку сумма списалась.

Я сказал, что пока не проясню ситуацию, ничего оплачивать не буду. Кассир позвала администратора, а я стал звонить в службу поддержи сбербанка. Там мне подтвердили информацию о том, что сумма списалась с моего счета, но по какой-то причине она не была зачислена на счет в окей. Мне предложили создать обращение с просьбой вернуть мои деньги и его рассмотрят до 12 января, что я и сделал.

В любом курсе по базам данных рассматривая такой важную особенность как транзакционность, вам приведут пример с денежным переводом. Транзакционность гарантирует нам то, что операции выполненные в рамках транзакции либо выполнятся все, либо транзакция не будет выполнена вовсе. Такая ситуация, что с вашего счета будут списаны деньги, но не будут зачислены на счет получателя, в современных СУБД невозможна. Но Сбербанк смог.

Как Сбербанк и Окей оставили меня без денег на новый год Сбербанк, Магазин Окей, Длиннопост

Сотрудник техподдержки заверил меня в том, что это не умышленное кидалово ОКеем и я могу спокойно оплатить покупку второй раз, а деньги с первой оплаты вернутся до 12 января. После того, как я повторно оплатил покупку, я решил на всякий случай оставить запись в книге жалоб и предложений.  Во-первых, когда касса перезагрузилась, кассир сказала дословно: "Касса зависла", во-вторых, если деньги не вернуться, будет хоть какое-то упоминание обо мне и данном происшествии.

Когда я подошел на стойку информации, то там оказалась та самая девушка-администратор и она отказалась мне выдать книгу жалоб.

Как Сбербанк и Окей оставили меня без денег на новый год Сбербанк, Магазин Окей, Длиннопост

Заявила, что это проблема банка, а не магазина.

Что имеем:

1) Сбербанк вызвал досадное разочарование: в 2019-м уже можно было бы освоить транзакционность, которая есть во всех современных СУБД, языках программирования, этих ваших джавах, гибернейтах и прочем.

2) ОКей вызвал лютое негодование тем, что допускает до работы администраторов, что прячут от клиентов книги жалоб. В ОКей на Выборгском шоссе дом 3, корпус 1 больше ни ногой.

3) Да, у меня настолько скучная жизнь и в ней не происходит ничего интересного, что я пишу 31-го января такие офигительные старческие истории.


И вопрос к погроммистам, как такое возможно, чтобы в банке транзакции были не очень транзакционны? Призываю в посте отписаться разработчиков, работающих в сбербанке.

Как Сбербанк и Окей оставили меня без денег на новый год Сбербанк, Магазин Окей, Длиннопост
Вы смотрите срез комментариев. Показать все
2
DELETED
Автор поста оценил этот комментарий

Как обеспечить транзакционность между разными системами?

раскрыть ветку (4)
Автор поста оценил этот комментарий
Записывать в бд списание только тогда когда вторая система вернула сообщение об успехе?
раскрыть ветку (3)
Автор поста оценил этот комментарий

А возврат сторонней систем сообщения об успехе, всегда гарантирует, что внутри все прошло? Или косячит всегда только сбер?

раскрыть ветку (2)
Автор поста оценил этот комментарий
Если у вас система отдает ответ что все успешно, когда там не все успешно то это как минимум - система говно. Для системы номер 2 ответ системы номер 1 об успехе должен являться триггером того что все хорошо и волновать её не должно что там в системе номер один может пойти не так при успешном ответе.
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Я как бы про то, что косяк здесь мог произойти как и на стороне сбера, так и на стороне эквайера, или на стороне банка у окея. Но виноват всегда тот, кто карту выпускал

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку