Кошка Ночной Луны. Morgenmuffel
29.01.2018 в 21:55
Пишет  Diary Spirit:

Технические работы в субботу и воскресенье
ОБЪЯВЛЕНИЕ

Для проведения полного пересчета и корректировки неточностей в системе платежей мы проведем технические работы в выходные, когда нагрузка на сайт меньше всего: в субботу, 3 февраля, с 7:00 до 16:00. Если не успеем закончить пересчет, то продолжим его в воскресенье, 4 февраля, так же с 7:00 до 16:00.
Полагаем, что это максимум времени, которое может нам потребоваться.

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

Благодарим за внимание и расшаривание этого объявления и просьбы.

Теперь о том, почему и для чего потребовался пересчет.
В последние дни у некоторых пользователей появилось несоответствие в привычном, казалось бы, годами незыблемом тождестве:
остаток + сумма пополнения = баланс счета.
У некоторых из вас остаток на счете даже мог стать отрицательным.

Действительно, всю прошедшую неделю вместе с некоторыми из вас мы наблюдаем в системе платежей необъяснимый пока полтергейст. Вероятно, все годы существования платежной системы в ней существовала ошибка (а то и не одна), которой мы не замечали. Она накапливалась, но лишь у тех, кто при пополнении счета выполнял какую-то определенную последовательность действий. Ее последствия стали видны недавно, после того как мы подключили новую систему платежей PayAnyWay. Пытаясь отыскать ошибку, мы стали пересчитывать все платежи и траты по проблемным счетам, тогда-то у некоторых пользователей и выяснилось несоответствие.

Мы решили не делать реальный перерасчет всем пользователям, чтобы никто не «ушел в минус» (все же, это не ваша ошибка), но виртуальный пересчет сделать необходимо. Поясним, что это значит. Из-за копившихся ошибок остаток на вашем счете может не соответствовать результату сложения и вычитания сумм движения по счету во всей цепочке, за все время его существования.

Чтобы это исправить, мы
1) сохраним баланс счетов всех пользователей в таблице;
2) посчитаем каждому пользователю цепочку его реальных и виртуальных платежей и затрат, выведем реальный остаток, который может оказаться не равным тому, который вы сейчас видите на счете;
3) проведем арифметическую операцию с обратным знаком — списание или пополнение счета на эту получившуюся разницу;
4) в итоге остаток на вашем счете не изменится, но вся цепочка пополнения и расходов с этим последним виртуальным платежом превратится в тождество, а целостность системы платежей будет восстановлена.

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

URL записи

@темы: Кросспост