Feb. 18th, 2005

redis: (normal)
В школьные годы довелось работать на рыбоперерабатывающем заводе. До сих пор не понимаю людей, покупающих "паштет шпротный". А ведь раньше думал, что уж продукты питания готовятся в стерильных условиях и для людей.

Теперь вот в банке работаю. Всего-то и делов: получить транзакцию, прочитать, записать в базу данных. Ну еще проследить, чтоб данные о транзакции никому на сторону не попали.

Первое время для меня каждая транзакция была чем-то святым: если уж она пришла, ее надо обработать, провести, сохранить - все же дело с деньгами связаное.

Потом стал понемногу понимать механику банка.

Транзакции приходят без указания номера счета, без указания типа сделки (продажа-покупка-перевод?), с левыми данными внутри или вовсе в испорченном файле. После того, как они к нам попали, специальная программа распределяет их по клиентам, теряя по пути часть транзакций (в иные дни - по полтысячи штук). То, что до нас все же добралось - нам и обрабатывать.

Попав к нам, транзакции неделями валяются в отстойнике, пребывая в неопределенном состоянии. По месяцу лежат и ждут патча к базе данных, который так и не приходит. Пропадают из отстойника в неопределенном направлении, не вызывая никакой реакции окружающих (ну ладно, я их нашел и скопировал обратно).

Вижу, на одном счету какая-то левая разница. Интереса ради, делаю поиск всех не прошедших транзакций этого счета. Нахожу 2 штуки, все с ошибками. Посылаю обратно на исправление. Получаю ответ, обрабатываю... теперь на этом счету левая разница ровно в 3 раза больше.

Звонят клиенты: "не обрабатывайте транзакции типа 320, а то после вас вообще не поймешь, что там и как. Лучше мы их в базу данных вручную впишем".

Что там китайский программист понаписал - вообще словами не объяснить. Про массивы парень понятия не имеет, сделал 10 переменных попа1, попа2... попа10 и счетчик. И каждый раз IF ставит - "если счетчик равен 1, данные в переменной попа1, если 2 - данные в 2...". Не лень ему. Зато программка уже под мегабайт.

"А этот тип транзакций мы автоматически не обрабатываем", - говорит он - "ты его вручную скопируй, запусти, получи результат, поправь, скопируй в другое место, подожди полчаса и проверь результат".

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

А база данных тоже молодцом - написана с ошибками. Прислали патч - транзакции проходят, ордеры перестали. Без патча - транзакции не хотят идти. Приходится вручную удалять транзакцию, вызывающую облом базы данных и снова пробовать остальные. А удаленная просто пропадает.

Так и живем.

И мы доверяем ЭТОМУ свои деньги?

P.S. Да, а насчет паштета шпротного... Нам выкатывали чаны сгнившей селедки, мы у нее отрезали головы и хвосты и вытаскивали кишки, а тушки кидали в другой чан. На паштет шли не тушки, а то, что мы отрезали - головы, хвосты и кишки гнилой селедки.

P.P.S. Зато теперь я знаю, в чем заключается ВЕЛИКАЯ БАНКОВСКАЯ ТАЙНА!

Profile

redis: (Default)
redis

June 2025

S M T W T F S
123 456 7
8910111213 14
151617 1819 2021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 6th, 2025 07:56 pm
Powered by Dreamwidth Studios