I was talking with Gerhard on IRC, and in Seam 3, we split persistence and transactions for the reason that some people want to use transactions without persistence.
I personally don't think it's necessary, and we should stick with one module. On 30 Jul 2012, at 12:20, Romain Manni-Bucau wrote: > Since we currently have not a gain splitting both (people bringing jpa > btings jta i think or the opposite *in real life*) we can keep a single > module IMO > > - Romain > Le 30 juil. 2012 13:01, "Pete Muir" <[email protected]> a écrit : > >> Do we want to split out transactions from persistence? IMO it's best to >> keep the two together: >> >> * deltaspike-persistence-api >> * deltaspike-persistence-impl >> * deltaspike-persistence-tx-impl >> >> I think most people naturally associate persistence with transactions. >> >> On 30 Jul 2012, at 11:58, Mark Struberg wrote: >> >>> ack, the main question is which parts are depending on each other. >> Having an answer to that question will also determine the name. >>> >>> jpa-api: con: it might also be used for JTA which is not only for JPA >> but also for other TX connectors like JMS. >>> >>> jta-api: also not good, as JPA can be used without JTA (resource-local). >> This is actually the main use case. >>> >>> What about: >>> * deltaspike-transaction-api >>> >>> * deltaspike-transaction-impl (containing resource-local stuff) >>> * deltaspike-transaction-tx-impl (containing the tx support, replacing >> the transaction strategy) >>> >>> something along that? >>> >>> LieGrue, >>> strub >>> >>> >>> ----- Original Message ----- >>>> From: Gerhard Petracek <[email protected]> >>>> To: [email protected] >>>> Cc: >>>> Sent: Monday, July 30, 2012 12:03 PM >>>> Subject: Re: AW: AW: AW: AW: [DISCUSS] [DELTASPIKE-175] >> [DELTASPIKE-219] @Transactional >>>> >>>> hi @ all, >>>> >>>> we need an agreement about the module name (and if multiple modules are >>>> needed). >>>> it would be useful to do it before v0.3 (which should get released >> asap). >>>> >>>> regards, >>>> gerhard >>>> >>>> >>>> >>>> 2012/7/10 Arne Limburg <[email protected]> >>>> >>>>> Hi Romain, >>>>> >>>>> Nothing for the 0.3 release. But we discussed some EntityManager >>>>> configuration options that we may add later. >>>>> So for 0.3 I am fine with tx-api and jpa-impl >>>>> >>>>> Cheers, >>>>> Arne >>>>> >>>>> -----Ursprüngliche Nachricht----- >>>>> Von: Romain Manni-Bucau [mailto:[email protected]] >>>>> Gesendet: Dienstag, 10. Juli 2012 09:06 >>>>> An: [email protected] >>>>> Betreff: Re: AW: AW: AW: AW: [DISCUSS] [DELTASPIKE-175] >> [DELTASPIKE-219] >>>>> @Transactional >>>>> >>>>> What will you put in jpa api today? >>>>> Le 10 juil. 2012 08:43, "Arne Limburg" >>>> <[email protected]> a >>>>> écrit : >>>>> >>>>>> I think at least we will end up with a jpa-api And the tx-impl maybe >>>>>> will contain the JTA stuff? >>>>>> >>>>>> -----Ursprüngliche Nachricht----- >>>>>> Von: Mark Struberg [mailto:[email protected]] >>>>>> Gesendet: Dienstag, 10. Juli 2012 08:39 >>>>>> An: [email protected] >>>>>> Betreff: Re: AW: AW: AW: [DISCUSS] [DELTASPIKE-175] [DELTASPIKE-219] >>>>>> @Transactional >>>>>> >>>>>>> for renaming PersistenceStrategy to TransactionStrategy >>>>>> >>>>>> +1 >>>>>> >>>>>> >>>>>>> +1 for renaming deltaspike-jpa-module-api to >>>>>>> +deltaspike-tx-module-api and >>>>>>> creating empty deltaspike-jpa-module-api and >>>>>>> deltaspike-tx-module-impl >>>>>> >>>>>> Not sure, think we need to think a bit harder about what we will >>>>>> finally end up with. >>>>>> Will we have a api which has any EE dependency finally? If not it >>>>>> might be enough to have tx-api + jpa-impl + jta-impl >>>>>> >>>>>> LieGrue, >>>>>> strub >>>>>> >>>>>> >>>>>> ----- Original Message ----- >>>>>>> From: Arne Limburg <[email protected]> >>>>>>> To: "[email protected]" >>>>>>> <[email protected]> >>>>>>> Cc: >>>>>>> Sent: Tuesday, July 10, 2012 8:36 AM >>>>>>> Subject: AW: AW: AW: [DISCUSS] [DELTASPIKE-175] [DELTASPIKE-219] >>>>>>> @Transactional >>>>>>> >>>>>>> What do the others think about doing this already in 0.3? >>>>>>> +1 from me for renaming PersistenceStrategy to >>>> TransactionStrategy >>>>>>> +1 for renaming deltaspike-jpa-module-api to >>>>>>> +deltaspike-tx-module-api and >>>>>>> creating empty deltaspike-jpa-module-api and >>>>>>> deltaspike-tx-module-impl >>>>>>> >>>>>>> Cheers, >>>>>>> Arne >>>>>>> >>>>>>> -----Ursprüngliche Nachricht----- >>>>>>> Von: Romain Manni-Bucau [mailto:[email protected]] >>>>>>> Gesendet: Montag, 9. Juli 2012 21:33 >>>>>>> An: [email protected] >>>>>>> Betreff: Re: AW: AW: [DISCUSS] [DELTASPIKE-175] [DELTASPIKE-219] >>>>>>> @Transactional >>>>>>> >>>>>>> +1 for the last >>>>>>> >>>>>>> - Romain >>>>>>> >>>>>>> >>>>>>> 2012/7/9 Arne Limburg <[email protected]> >>>>>>> >>>>>>>> Ihmo we should rename the api to deltaspike-tx-module-api >>>> and >>>>>>>> rename the PersistenceStrategy to TransactionStrategy Also it >>>> looks >>>>>>>> strange, the name of the impl should be left as it is. Maybe >>>> we >>>>>>>> should add an empty impl to the tx-module and an empty api to >>>> the JPA >>>>> module? >>>>>>>> >>>>>>>> Cheers, >>>>>>>> Arne >>>>>>>> >>>>>>>> -----Ursprüngliche Nachricht----- >>>>>>>> Von: Jason Porter [mailto:[email protected]] >>>>>>>> Gesendet: Montag, 9. Juli 2012 18:54 >>>>>>>> An: [email protected] >>>>>>>> Betreff: Re: AW: AW: [DISCUSS] [DELTASPIKE-175] >>>> [DELTASPIKE-219] >>>>>>>> @Transactional >>>>>>>> >>>>>>>> I'm fine renaming things for v0.3 as we really >>>> haven't done any >>>>>>>> JPA >>>>>>> >>>>>>>> related stuff yet. >>>>>>>> >>>>>>>> On Mon, Jul 9, 2012 at 12:45 AM, Gerhard Petracek < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> @ mark: >>>>>>>>> that's more or less what we discussed at [1]. >>>>>>>>> >>>>>>>>> regards, >>>>>>>>> gerhard >>>>>>>>> >>>>>>>>> [1] http://s.apache.org/3pO >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> 2012/7/9 Arne Limburg >>>> <[email protected]> > > > >>>>>>>> For api it's fine, > > and then we have two impl >>>> modules, JPA and >>>>> JTA? >>>>>>>>>> >>>>>>>>>> Cheers, >>>>>>>>>> Arne >>>>>>>>>> >>>>>>>>>> -----Ursprüngliche Nachricht----- > > Von: >>>> Romain Manni-Bucau >>>>>>>> [mailto:[email protected]] > > Gesendet: Sonntag, >>>> 8. Juli 2012 >>>>>>>> 21:37 > > An: [email protected]; >>>> Mark Struberg >>>>>>>>> >>>>>>>>> Betreff: Re: AW: AW: [DISCUSS] [DELTASPIKE-175] >>>> [DELTASPIKE-219] >>>>>>>>>> @Transactional > > > > sounds fine >>>>>>>> - Romain > > > >>>>>>>>>> >>>>>>>>>> 2012/7/8 Mark Struberg <[email protected]> >>>>>>>>> maybe we >>>>>>>> should just rename the jpa module to tx? >>>>>>>>>>> >>>>>>>>>>> There is no single import of any >>>> javax.persistence in > > > >>>>>>>> deltaspike-jpa-api yet. >>>>>>>>>>> >>>>>>>>>>> LieGrue, >>>>>>>>>>> strub >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> ----- Original Message ----- > > > >>>>> From: Arne Limburg >>>>>>> <[email protected]> >>>>>>>>>>>> To: >>>> "[email protected]" >>>>>>> < >>>>>>>>>>> [email protected]> >>>>>>>>>>>> Cc: >>>>>>>>>>>> Sent: Sunday, July 8, 2012 8:39 PM > >>>>>>> Subject: AW: AW: >>>>>>>> [DISCUSS] [DELTASPIKE-175] >>>>>>> [DELTASPIKE-219] >>>>>>>>>>> @Transactional >>>>>>>>>>>> >>>>>>>>>>>> Yes, sounds good. >>>>>>>>>>>> The impl of that module could contain >>>> the JTA stuff. >>>>>>> And the >>>>>>>>>>>> JPA module >>>>>>>>>>> would >>>>>>>>>>>> contain the resource local stuff. >>>> Everybody that does >>>>>>> not need >>>>>>>>>>>> the JTA >>>>>>>>>>> then >>>>>>>>>>>> could just use the tx-api and the JPA >>>> api and impl. >>>>>>>>>>>> >>>>>>>>>>>> Cheers, >>>>>>>>>>>> Arne >>>>>>>>>>>> >>>>>>>>>>>> -----Ursprüngliche Nachricht----- > >>>>>>> Von: Romain >>>>>>>> Manni-Bucau [mailto:[email protected]] > > > >>>>> Gesendet: >>>>>>>> Sonntag, 8. Juli 2012 20:29 > > > > An: >>>>>>>> [email protected] >>>>>>>>>>>> Betreff: Re: AW: [DISCUSS] >>>> [DELTASPIKE-175] >>>>>>> [DELTASPIKE-219] >>>>>>>>>>> @Transactional >>>>>>>>>>>> >>>>>>>>>>>> i thought the same, JTA shouldn't >>>> depend on JPA. >>>>>>>>>>>> @Transactional should >>>>>>>>>>> be in >>>>>>>>>>>> a tx module then JPA could use it. >>>>>>>>>>>> >>>>>>>>>>>> wdyt? >>>>>>>>>>>> >>>>>>>>>>>> - Romain >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> 2012/7/8 Arne Limburg >>>>>>> <[email protected]> >>>>>>>>>>>> >>>>>>>>>>>>> OK, but I am still not sure where >>>> to split it. >>>>>>> While >>>>>>>>>>>>> implementing this, I got the >>>> feeling, that the >>>>>>> @Transactional >>>>>>>>>>>>> stuff should completely move out of >>>> the JPA module. >>>>>>> It feeled >>>>>>>>>>>>> quite strange that the JTA module >>>> depends on the >>>>>>> JPA module... >>>>>>>>>>>>> >>>>>>>>>>>>> I think, I'll push my stuff >>>> right after the >>>>>>> 0.3 release and >>>>>>>>>>>>> than we can discuss this at the >>>> code-base. >>>>>>>>>>>>> Maybe I should put all into the JPA >>>> module and we >>>>>>> split it >>>>>>>>>>>>> after agreeing to a module >>>> structure? >>>>>>>>>>>>> >>>>>>>>>>>>> Cheers, >>>>>>>>>>>>> Arne >>>>>>>>>>>>> >>>>>>>>>>>>> -----Ursprüngliche Nachricht----- >>>>>>>>> Von: Romain >>>>>>>> Manni-Bucau >>>>>>> [mailto:[email protected]] >>>>>>>>>>>>> Gesendet: Sonntag, 8. Juli 2012 >>>> 17:48 > > > >> An: >>>>>>>> [email protected]; Mark >>>>>>> Struberg >>>>>>>>>>>>> Betreff: Re: AW: [DISCUSS] >>>> [DELTASPIKE-175] >>>>>>> [DELTASPIKE-219] >>>>>>>>>>>>> @Transactional >>>>>>>>>>>>> >>>>>>>>>>>>> +1 >>>>>>>>>>>>> >>>>>>>>>>>>> - Romain >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> 2012/7/8 Mark Struberg >>>> <[email protected]> > > > >> > >>>>>>>>> >>>>>>>>>>>> +1 for JTA module. >>>>>>>>>>>>>> >>>>>>>>>>>>>> LieGrue, >>>>>>>>>>>>>> strub >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> ----- Original Message ----- >>>>>> From: >>>>>>> Arne Limburg >>>>>>>>>>>>> >>>> <[email protected]> > > >>>>>>> To: >>>>>>>>>>>>> >>>> "[email protected]" >>>>>>> < > >>>>>>>>>>>>> >>>> [email protected]> >>>>>>>>>>>>>>> Cc: >>>>>>>>>>>>>>> Sent: Sunday, July 8, >>>> 2012 5:47 PM > >>>>>>>> Subject: AW: >>>>>>>>>>>>> [DISCUSS] [DELTASPIKE-175] >>>> [DELTASPIKE-219] > >>>>>>>> >>>>>>>>>>>>> @Transactional >>>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>> I startet implementing it >>>> that way, but I >>>>>>> stumbled over >>>>>>>>>>>>>>> another >>>>>>>>>>>> issue: >>>>>>>>>>>>>>> We get a dependency to >>>> the JTA spec and >>>>>>> the EJB spec >>>>>>>>>>>>> that >>>>>>>> way. >>>>>>>>>>>>> So >>>>>>>>>>>> >>>>>>>>>>>>>>> our >>>>>>>>>>>>>> JPA module >>>>>>>>>>>>>>> only would work with this >>>> apis in the >>>>>>> classpath. >>>>>>>>>>>>>>> Do we accept this or are >>>> we back on a >>>>>>> JTA module? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Cheers, >>>>>>>>>>>>>>> Arne >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -----Ursprüngliche >>>> Nachricht----- > >>>>>>>> Von: Romain >>>>>>>>>>>>> Manni-Bucau >>>> [mailto:[email protected]] > >>>>>>>> Gesendet: >>>>>>>>>>>>> Donnerstag, 5. Juli >>>>>>>>>>>>> 2012 15:07 > > An: >>>>>>> [email protected] >>>>>>>>>>>>>>> Betreff: Re: [DISCUSS] >>>> [DELTASPIKE-175] >>>>>>> [DELTASPIKE-219] >>>>>>>>>>>>>>> @Transactional > > >>>>>> if >>>>>>> it works fine with CMT +1 > >>>>>>>>>>>>>>>> well let's have a >>>> try, we'll >>>>>>> fix it if it is not enough >>>>>>>>>>>> ;) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> - Romain >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2012/7/5 Pete Muir >>>>>>> <[email protected]> > > > >> In >>>>>>>>>>>>> Seam >>>>>>>>>>>>> 2 >>>>>>>>>>>>> we: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> * checked if UT was >>>> available in >>>>>>> JNDI, and used it if >>>>>>>>>>>>> it >>>>>>>>>>>> were >>>>>>>>>>>>>>>> * checked if there >>>> was a CMT >>>>>>> transaction, and used it >>>>>>>>>>>>> (IIRC >>>>>>>>>>>> this >>>>>>>>>>>>>>>> wwas to work around >>>> abug) > >>>>>>>>> * otherwise tried to >>>>>>>>>>>>> use a resource local transaction >>>> (e.g. >>>>>>>>>>>> from >>>>>>>>>>>>>>>> Hibernate) >>>>>>>>>>>>>>>> * allowed the user >>>> to override and >>>>>>> specify one >>>>>>>>>>>>> strategy >>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> In Seam 3 >>>> we did the same. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> So I like option 1. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On 5 Jul 2012, at >>>> 10:03, Arne >>>>>>> Limburg wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> yesterday I >>>> startet working on >>>>>>> the JTA support for >>>>>>>>>>>> @Transactional. >>>>>>>>>>>>>>>>> My current >>>> approach is to >>>>>>> implement a >>>>>>>>>>>> JtaPersistenceStrategy. >>>>>>>>>>>>>>>>> However that >>>> leads me to the >>>>>>> problem: Who decides >>>>>>>>>>>>> which >>>>>>>>>>>> >>>>>>>>>>>>>>>> PersistenceStrategy >>>> should be taken >>>>>>> and how should this >>>>>>>>>>>> decision >>>>>>>>>>>>>>>> be >>>>>>>>>>>>>> made? >>>>>>>>>>>>>>>>> I have three >>>> suggestions: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> 1. We >>>> detect, if a >>>>>>> UserTransaction is available, >>>>>>>>>>>> if so, the >>>>>>>>>>>>>>>> >>>> JtaPersistenceStrategy is taken, >>>>>>> otherwise the > >> >>>>>>>>>>>>> ResourceLocalPersistenceStrategy is >>>> taken. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> 2. We >>>> detect, if the >>>>>>> involved persistence units >>>>>>>>>>>> use JTA or >>>>>>>>>>>>>>>> RESOURCE_LOCAL >>>> (which would lead to >>>>>>> another question: >>>>>>>>>>>>> Would >>>>>>>>>>>> we >>>>>>>>>>>>>>>> like to support, >>>> that >>>>>>> @Transactional mixes both >>>>>>>>>>>>> strategies?) >>>>>>>>>>>> and >>>>>>>>>>>>>>>> decide from that >>>> information > > > > >> > >> > >>>>>>>> 3. We let the user decide >>>>>>> by making one (or both) >>>>>>>>>>>> persistence >>>>>>>>>>>>>>>> strategies >>>> @Alternatives > >>>>>>>>>> What do you think? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Cheers, >>>>>>>>>>>>>>>>> Arne >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Jason Porter >>>>>>>> http://lightguard-jp.blogspot.com >>>>>>>> http://twitter.com/lightguardjp >>>>>>>> >>>>>>>> Software Engineer >>>>>>>> Open Source Advocate >>>>>>>> Author of Seam Catch - Next Generation Java Exception >>>> Handling >>>>>>>> >>>>>>>> PGP key id: 926CCFF5 >>>>>>>> PGP key available at: keyserver.net, pgp.mit.edu >>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >> >>
