hi Emmanuel, All!
I've provided some more context regarding the data store I'm looking
into in response to Sanne's post. I know it sounds crazy but I'm
exploring git as a key-value store (that gives me versioning as a
"bonus").
On Mon, Mar 26, 2012 at 6:37 PM, Emmanuel Bernard
<emmanuel(a)hibernate.org> wrote:
I am not entirely sure how this will be shaped but I would like at
least the following:
- a way to hook a fake JTA resource for backends that do not expose themselves as JTA
resources
- a way to support things like entityManager.getTransaction().begin() / .commit() /
.rollback();
for systems that have some kind of transaction demarcation.
Well, this sounds like exactly what I need :-) What I could do is to
provide XAResource implementation for jgit but it just feels like
there should be an easier way. At the same time my knowledge of
Hibernate/OGM code base is limited so forgive me ignorance and my
intuition might be totally wrong here.
I also want to support
...
but only support begin / commit (no rollback). That will help as the flush() operation
will be part of the commit() operation transparently.
This would be fine for me (although with git you are getting rollback
almost "for free"). But it is true that the main thing here would be
to know when commit occurs to be able to flush/persist changes
correctly (or at least finish flushing).
I know that the use case I'm trying to cover here might sound "exotic"
but it is good to see that you were looking into some kind of
transaction facilities for stores that don't manifest themselves as JTA
resources. Would be higly interested in brainstorming / trying out
different things.
Thanks for your input so far!
Cheers,
Pawel