I don't see an issue with changing that signature. On 07/18/2012 10:27 AM, Sanne Grinovero wrote: > Hi Steve, > thanks for the clarification. > > Wouldn't it make sense then to add the "int status" as an argument to > afterAfterTransaction as well? As it seems some code looks for this by > invoking tx.getStatus() in implementations of this method, but that > seems unsafe as I've found cases in which this gets the wrong status > code at that point. > > Sanne > > On 18 July 2012 16:19, Steve Ebersole <steven.ebers...@gmail.com> wrote: >> afterAfterTransaction is simply a part of the afterTransaction process. >> afterTransaction is split into a number of steps, afterAfterTransaction >> simply being the last step in that process. >> >> >> >> On Wed 18 Jul 2012 05:15:20 AM CDT, Sanne Grinovero wrote: >>> Hi all, >>> I'm puzzled about the implementation we have in >>> org.hibernate.engine.transaction.internal.jta.JtaTransaction >>> >>> regarding after-transaction completion handling. >>> >>> Looking at the two methods: >>> afterAfterCompletion(); <-- note the "After - After" prefix >>> afterTransactionCompletion(int status); >>> >>> >>> The implementation of afterTransactionCompletion(int status) is a >>> no-op, while after-after-completion actually invokes the >>> transactionCoordinator().afterTransaction( this, >>> userTransaction.getStatus() ); >>> Shouldn't this be invoked in the afterTransactionCompletion(status) >>> method? >>> >>> As I just noticed in some OGM tests, during the after-after phase it's >>> too late to invoke the getStatus() on the transaction as this will >>> have been cleaned up already: that's why the >>> afterTransactionCompletion(int) has a status parameter, as the status >>> argument should be used rather than attempting to lookup the >>> transaction state again. >>> >>> OGM is having it's own AbstractTransactionImpl implementation; >>> changing it by moving the afterTransaction call in the appropriate >>> method fixed my problems to our Search integration. >>> >>> This looks like a change that should be picked up by ORM's >>> JtaTransaction too? I'm not familiar with this, so I might be totally >>> wrong but in case I would love to understand why. >>> >>> Cheers, >>> Sanne >>> _______________________________________________ >>> hibernate-dev mailing list >>> hibernate-dev@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
-- st...@hibernate.org http://hibernate.org _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev