Re: A question about journal creation
Paul Bennett <[email protected]> Fri, 26 Jul 2013 10:57:01 -0400
| Newsgroups | gmane.comp.java.prevayler |
|---|---|
| Message-ID | <[email protected]> |
Klaus, that should work well. Thanks for a much simpler solution. -pb On Jul 25, 2013, at 2:58 PM, Klaus Wuestefeld <[email protected]> wrote: > Since closing the prevalent system and restarting it is a cost you are > willing to pay, if you do that before executing the transaction group, > a new journal will be created, > > On Thu, Jul 25, 2013 at 2:15 PM, Paul Bennett <[email protected]> wrote: >> We have a situation where we would like to run a group of transactions, and >> be able to undo them as a group. We could define inverses on the >> transactions and re-run, but this is complicated. In the context in which >> they run, there would only be a single user on the system (an >> administrator). The system would leave the single-user context with either >> the group executed as normal, or not executed at all. There would be no >> other transactions executing on the system while this group is executed and >> possibly undone. >> >> Given these constraints, we think there is a simple implementation: simply >> remove from the journal those transactions that need to be undone. We would >> do this by taking a snapshot before the transactions are executed, starting >> a new journal, and executing the transactions. Then, to undo, we simply >> remove that new journal file, and reload the last snapshot. >> >> So: >> >> 1) Does this sound like a plausible solution? Have we missed something that >> makes this unworkable? >> >> 2) The only thing missing from this to be done is the ability to control >> explicitly the transaction boundaries on which a journal is created i.e. >> there is no equivalent of takeSnapshot() for starting a new journal. >> Obviously this has to be synced with execution and journal sync, so we would >> propose to implement this by adding a boolean to the execute(Transaction t) >> method, which would ultimately add a flag to TransactionCapsule, indicating >> it should explicitly start a new journal before serialization - similar to >> the test in PersistentJournal#append using the isOutputJournalStillValid() >> method. >> >> Does this sound like a good/viable solution? >> >> Any comments/alternative ideas would be most welcome! >> >> Thanks in advance, >> >> -pb >> >> >> >> >> ------------------------------------------------------------------------------ >> See everything from the browser to the database with AppDynamics >> Get end-to-end visibility with application monitoring from AppDynamics >> Isolate bottlenecks and diagnose root cause in seconds. >> Start your free trial of AppDynamics Pro today! >> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk >> _______________________________________________ >> To unsubscribe go to the end of this page: >> http://lists.sourceforge.net/lists/listinfo/prevayler-discussion >> _______________________________________________ >> "Databases in Memoriam" -- http://www.prevayler.org >> > > > > -- > Valeu, Klaus. > > ------------------------------------------------------------------------------ > See everything from the browser to the database with AppDynamics > Get end-to-end visibility with application monitoring from AppDynamics > Isolate bottlenecks and diagnose root cause in seconds. > Start your free trial of AppDynamics Pro today! > http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk > _______________________________________________ > To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion > _______________________________________________ > "Databases in Memoriam" -- http://www.prevayler.org ------------------------------------------------------------------------------ See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk _______________________________________________ To unsubscribe go to the end of this page: http://lists.sourceforge.net/lists/listinfo/prevayler-discussion _______________________________________________ "Databases in Memoriam" -- http://www.prevayler.org