Разбіралі баг з недахопам грошай на балансе аднаго з карыстальнікаў. Каб упэўніцца, што ўсё добра ў іншых, давялося шукаць нетрывіяльны спосаб праверыць астатнія рахункі.
Архітэктура: у карыстальніка ёсць рахункі ў розных валютах і асобна ёсць спіс транзакцый па кожным з рахункаў. Транзакцыі зроблены метадам падвойнага бухгалтарскага запісу, таму кожны рахунак мае ўваходныя і выходныя транзакцыі. Кожная транзакцыя захоўвае так сама і значэнне канчатковага балансу на той момант, калі яна была створана.
Запыт 1 правярае, што баланс на рахунку адпавядае суме ўсіх транзакцый па гэтым рахунку, і выводзіць тыя рахункі, дзе ёсць разыходжанні. Калі нічога не вярнуў — значыць усё добра.
Запыт 2 разлічвае нарастаючы вынік для кожнай транзакцыі ў межах аднаго рахунка і параўноўвае з фактычным значэннем балансу, якое захавана ў транзакцыі. Гэта дазваляе знайсці канкрэтную транзакцыю, пасля якой паўстала разыходжанне.
Такі падыход дапамагае хутка лакалізаваць праблему ў дадзеных, не перабіраючы транзакцыі рукамі.