Ahoj.

V ramci jednej trojvrstvej mikroaplikacie ( cosi ako evidencia skladu, naskladnit, vyskladnit a tak podobne ) stojim pred rozhodnutim ci a ako implementovat "undo" feature. Proste cosi, co by dotycnemu cloveku umoznilo vystornovat predosly, pripadne par predoslych krokov po tom, ako sa commitli do db.

Aplikacia je klasika - vaadin + spring + hibernate + h2 ( alebo postgres ).

Prve, co ma napadlo, su sql savepoiny. Tie ale funguju len do momentu uzavretia transakcie, pokial
ma pamat neklame.

Druhy napad bol urobit "snapshot", resp. dump celej databazy pred kazdou takouto operaciou. To by mohlo chvilu fungovat, velkost databazy by nemala presiahnut jednotky/desiatky MB. Co ale v pripade, ze presiahne a ako
sa vysporiadat s viacnasobnym pristupom viacerych uzivatelov naraz, netusim.

Treti napad by bol naimplementovat nejake "oposite" metody k metodam ktore robia zmeny na DB a stack tychto zmien, ale do tohoto sa mi vonkoncom nechce, pretoze by to bolo neumerne vela prace.

Neriesil niekto podobny problem? Google mi moc nepomohol.

Diky

--
Dusan

Odpovedet emailem