On Jun 1, 2012, at 7:06 PM, Adam Heath wrote: >> But in one sentence I would like to integrate a tm that supports the >> recovery of transactions... and in the way it is currently integrated in >> OFBiz, Geronimo TM doesn't support this. > > Would it be possible to change the geronimo integration?
Yes, in fact I started with this and I have a local modification that I may be able to contribute soon; the idea is to setup the Geronimo TM with a different "transaction log" class: * we are currently using the UnrecoverableLog class and and this is not a reliable solution [*] * Geronimo provides a "transaction log" based on Howl [**] and this is the one I was able to plug in (with some work) in my local copy However I also faced some issues and the documentation of Geronimo in this area is very poor; also extracting the TM from new releases of Geronimo is challenging (this has been challenging also in the past but in the new release I couldn't even find the separate jars); also the fact that Geronimo TM bases its core operations on Howl may be a little concerning as Howl's last release was in January 2007. Even if none of the above issues may block us to enhance the current Geronimo integration (and as I wrote, I may be able to provide an enhancement for it), they made me spend some time researching for other more modern solutions and I came to Atomikos TransactionsEssentials [***] that seems to be a valid solution, actively maintained and adopted by several open source projects (including David's Moqui); its license is ASL2.0. But yeah, I am still working on this and I will keep you updated on the outcome. Regards, Jacopo [*] This is a comment from the class's source file: /** * A log sink that doesn't actually do anything. * Not recommended for production use as heuristic recovery will be needed if * the transaction coordinator dies. */ [**] http://howl.ow2.org/ [***] http://www.atomikos.com/Main/TransactionsEssentials