You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by Diego Cattelan <ca...@gmail.com> on 2014/06/27 18:12:38 UTC
Transaction manager time out
Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
<TransactionManager id="Default Transaction Manager"
type="TransactionManager">
defaultTransactionTimeout = 1 minutes
I expect an exception after a minute of work and so this is the result :
Caused by: java.lang.Exception: Transaction has timed out
at
org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:266)
but in and @Asynchronous method I never see the time out exception. The
asynchronous method completes succesfully without any exception but at the
end it sends a transaction rollback to the database.
What I'm doing wrong ? Thank you.
--
View this message in context: http://tomee-openejb.979440.n4.nabble.com/Transaction-manager-time-out-tp4670223.html
Sent from the TomEE Users mailing list archive at Nabble.com.
Re: Transaction manager time out
Posted by Diego Cattelan <ca...@gmail.com>.
Yes, Future.get() on the client gives the exception, but no timeout
exception is logged. When the method is synchronous the timeout
exception is logged. I'll try to build a sample...
Il 28/06/2014 12:02, Romain Manni-Bucau ha scritto:
> you call get on client side?
>
> maybe share a sample project cause depending what you do you (client) can
> have the responsability to log it
>
>
>
> Romain Manni-Bucau
> Twitter: @rmannibucau
> Blog: http://rmannibucau.wordpress.com/
> LinkedIn: http://fr.linkedin.com/in/rmannibucau
> Github: https://github.com/rmannibucau
>
>
> 2014-06-28 7:28 GMT+02:00 Diego Cattelan <ca...@gmail.com>:
>
>> Done, in case of asynchronous method the Future returns
>> TransactionRolledbackException to the client but I can't see any logged
>> exception.
>>
>> Hmm
>>> can you put log in debug to check that's not just a log level issue?
>>>
>>>
>>>
>>> Romain Manni-Bucau
>>> Twitter: @rmannibucau
>>> Blog: http://rmannibucau.wordpress.com/
>>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>>> Github: https://github.com/rmannibucau
>>>
>>>
>>> 2014-06-27 19:05 GMT+02:00 Diego Cattelan <ca...@gmail.com>:
>>>
>>> I understand. What's the means of a timeout exception if she happens
>>>> after
>>>> the work is complete ?
>>>>
>>>> Il 27/06/2014 18:43, Jean-Louis Monteiro ha scritto:
>>>>
>>>> Yep, in container managed transaction, the transaction is
>>>>
>>>>> committed/rollbacked by the container at the end of the method flow
>>>>> processing including any interceptor for your information.
>>>>> For your information as well, the timeout does not apply as soon as the
>>>>> commit is sent to the RDBMS. It's only a timer between the begin and the
>>>>> commit/rollback instructions.
>>>>>
>>>>> But it's only checked by Geronimo Transaction Manager during commit /
>>>>> rollback instructions.
>>>>> There is no daemon threads responsible for sending the timeout exception
>>>>> as
>>>>> soon as the time exceeds
>>>>>
>>>>>
>>>>> --
>>>>> Jean-Louis Monteiro
>>>>> http://twitter.com/jlouismonteiro
>>>>> http://www.tomitribe.com
>>>>>
>>>>>
>>>>> On Fri, Jun 27, 2014 at 6:12 PM, Diego Cattelan <
>>>>> cattelan.diego@gmail.com
>>>>> wrote:
>>>>>
>>>>> Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
>>>>>
>>>>>> <TransactionManager id="Default Transaction Manager"
>>>>>> type="TransactionManager">
>>>>>> defaultTransactionTimeout = 1 minutes
>>>>>>
>>>>>> I expect an exception after a minute of work and so this is the result
>>>>>> :
>>>>>>
>>>>>> Caused by: java.lang.Exception: Transaction has timed out
>>>>>> at
>>>>>>
>>>>>> org.apache.geronimo.transaction.manager.TransactionImpl.commit(
>>>>>> TransactionImpl.java:266)
>>>>>>
>>>>>> but in and @Asynchronous method I never see the time out exception. The
>>>>>> asynchronous method completes succesfully without any exception but at
>>>>>> the
>>>>>> end it sends a transaction rollback to the database.
>>>>>>
>>>>>> What I'm doing wrong ? Thank you.
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://tomee-openejb.979440.n4.nabble.com/Transaction-
>>>>>> manager-time-out-tp4670223.html
>>>>>> Sent from the TomEE Users mailing list archive at Nabble.com.
>>>>>>
>>>>>>
>>>>>>
Re: Transaction manager time out
Posted by Romain Manni-Bucau <rm...@gmail.com>.
you call get on client side?
maybe share a sample project cause depending what you do you (client) can
have the responsability to log it
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau
2014-06-28 7:28 GMT+02:00 Diego Cattelan <ca...@gmail.com>:
> Done, in case of asynchronous method the Future returns
> TransactionRolledbackException to the client but I can't see any logged
> exception.
>
> Hmm
>>
>> can you put log in debug to check that's not just a log level issue?
>>
>>
>>
>> Romain Manni-Bucau
>> Twitter: @rmannibucau
>> Blog: http://rmannibucau.wordpress.com/
>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>> Github: https://github.com/rmannibucau
>>
>>
>> 2014-06-27 19:05 GMT+02:00 Diego Cattelan <ca...@gmail.com>:
>>
>> I understand. What's the means of a timeout exception if she happens
>>> after
>>> the work is complete ?
>>>
>>> Il 27/06/2014 18:43, Jean-Louis Monteiro ha scritto:
>>>
>>> Yep, in container managed transaction, the transaction is
>>>
>>>> committed/rollbacked by the container at the end of the method flow
>>>> processing including any interceptor for your information.
>>>> For your information as well, the timeout does not apply as soon as the
>>>> commit is sent to the RDBMS. It's only a timer between the begin and the
>>>> commit/rollback instructions.
>>>>
>>>> But it's only checked by Geronimo Transaction Manager during commit /
>>>> rollback instructions.
>>>> There is no daemon threads responsible for sending the timeout exception
>>>> as
>>>> soon as the time exceeds
>>>>
>>>>
>>>> --
>>>> Jean-Louis Monteiro
>>>> http://twitter.com/jlouismonteiro
>>>> http://www.tomitribe.com
>>>>
>>>>
>>>> On Fri, Jun 27, 2014 at 6:12 PM, Diego Cattelan <
>>>> cattelan.diego@gmail.com
>>>> wrote:
>>>>
>>>> Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
>>>>
>>>>> <TransactionManager id="Default Transaction Manager"
>>>>> type="TransactionManager">
>>>>> defaultTransactionTimeout = 1 minutes
>>>>>
>>>>> I expect an exception after a minute of work and so this is the result
>>>>> :
>>>>>
>>>>> Caused by: java.lang.Exception: Transaction has timed out
>>>>> at
>>>>>
>>>>> org.apache.geronimo.transaction.manager.TransactionImpl.commit(
>>>>> TransactionImpl.java:266)
>>>>>
>>>>> but in and @Asynchronous method I never see the time out exception. The
>>>>> asynchronous method completes succesfully without any exception but at
>>>>> the
>>>>> end it sends a transaction rollback to the database.
>>>>>
>>>>> What I'm doing wrong ? Thank you.
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://tomee-openejb.979440.n4.nabble.com/Transaction-
>>>>> manager-time-out-tp4670223.html
>>>>> Sent from the TomEE Users mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>>
>
Re: Transaction manager time out
Posted by Diego Cattelan <ca...@gmail.com>.
Done, in case of asynchronous method the Future returns
TransactionRolledbackException to the client but I can't see any logged
exception.
> Hmm
>
> can you put log in debug to check that's not just a log level issue?
>
>
>
> Romain Manni-Bucau
> Twitter: @rmannibucau
> Blog: http://rmannibucau.wordpress.com/
> LinkedIn: http://fr.linkedin.com/in/rmannibucau
> Github: https://github.com/rmannibucau
>
>
> 2014-06-27 19:05 GMT+02:00 Diego Cattelan <ca...@gmail.com>:
>
>> I understand. What's the means of a timeout exception if she happens after
>> the work is complete ?
>>
>> Il 27/06/2014 18:43, Jean-Louis Monteiro ha scritto:
>>
>> Yep, in container managed transaction, the transaction is
>>> committed/rollbacked by the container at the end of the method flow
>>> processing including any interceptor for your information.
>>> For your information as well, the timeout does not apply as soon as the
>>> commit is sent to the RDBMS. It's only a timer between the begin and the
>>> commit/rollback instructions.
>>>
>>> But it's only checked by Geronimo Transaction Manager during commit /
>>> rollback instructions.
>>> There is no daemon threads responsible for sending the timeout exception
>>> as
>>> soon as the time exceeds
>>>
>>>
>>> --
>>> Jean-Louis Monteiro
>>> http://twitter.com/jlouismonteiro
>>> http://www.tomitribe.com
>>>
>>>
>>> On Fri, Jun 27, 2014 at 6:12 PM, Diego Cattelan <cattelan.diego@gmail.com
>>> wrote:
>>>
>>> Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
>>>> <TransactionManager id="Default Transaction Manager"
>>>> type="TransactionManager">
>>>> defaultTransactionTimeout = 1 minutes
>>>>
>>>> I expect an exception after a minute of work and so this is the result :
>>>>
>>>> Caused by: java.lang.Exception: Transaction has timed out
>>>> at
>>>>
>>>> org.apache.geronimo.transaction.manager.TransactionImpl.commit(
>>>> TransactionImpl.java:266)
>>>>
>>>> but in and @Asynchronous method I never see the time out exception. The
>>>> asynchronous method completes succesfully without any exception but at
>>>> the
>>>> end it sends a transaction rollback to the database.
>>>>
>>>> What I'm doing wrong ? Thank you.
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://tomee-openejb.979440.n4.nabble.com/Transaction-
>>>> manager-time-out-tp4670223.html
>>>> Sent from the TomEE Users mailing list archive at Nabble.com.
>>>>
>>>>
Re: Transaction manager time out
Posted by Romain Manni-Bucau <rm...@gmail.com>.
Hmm
can you put log in debug to check that's not just a log level issue?
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau
2014-06-27 19:05 GMT+02:00 Diego Cattelan <ca...@gmail.com>:
> I understand. What's the means of a timeout exception if she happens after
> the work is complete ?
>
> Il 27/06/2014 18:43, Jean-Louis Monteiro ha scritto:
>
> Yep, in container managed transaction, the transaction is
>> committed/rollbacked by the container at the end of the method flow
>> processing including any interceptor for your information.
>> For your information as well, the timeout does not apply as soon as the
>> commit is sent to the RDBMS. It's only a timer between the begin and the
>> commit/rollback instructions.
>>
>> But it's only checked by Geronimo Transaction Manager during commit /
>> rollback instructions.
>> There is no daemon threads responsible for sending the timeout exception
>> as
>> soon as the time exceeds
>>
>>
>> --
>> Jean-Louis Monteiro
>> http://twitter.com/jlouismonteiro
>> http://www.tomitribe.com
>>
>>
>> On Fri, Jun 27, 2014 at 6:12 PM, Diego Cattelan <cattelan.diego@gmail.com
>> >
>> wrote:
>>
>> Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
>>>
>>> <TransactionManager id="Default Transaction Manager"
>>> type="TransactionManager">
>>> defaultTransactionTimeout = 1 minutes
>>>
>>> I expect an exception after a minute of work and so this is the result :
>>>
>>> Caused by: java.lang.Exception: Transaction has timed out
>>> at
>>>
>>> org.apache.geronimo.transaction.manager.TransactionImpl.commit(
>>> TransactionImpl.java:266)
>>>
>>> but in and @Asynchronous method I never see the time out exception. The
>>> asynchronous method completes succesfully without any exception but at
>>> the
>>> end it sends a transaction rollback to the database.
>>>
>>> What I'm doing wrong ? Thank you.
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://tomee-openejb.979440.n4.nabble.com/Transaction-
>>> manager-time-out-tp4670223.html
>>> Sent from the TomEE Users mailing list archive at Nabble.com.
>>>
>>>
>
Re: Transaction manager time out
Posted by Diego Cattelan <ca...@gmail.com>.
I understand. What's the means of a timeout exception if she happens
after the work is complete ?
Il 27/06/2014 18:43, Jean-Louis Monteiro ha scritto:
> Yep, in container managed transaction, the transaction is
> committed/rollbacked by the container at the end of the method flow
> processing including any interceptor for your information.
> For your information as well, the timeout does not apply as soon as the
> commit is sent to the RDBMS. It's only a timer between the begin and the
> commit/rollback instructions.
>
> But it's only checked by Geronimo Transaction Manager during commit /
> rollback instructions.
> There is no daemon threads responsible for sending the timeout exception as
> soon as the time exceeds
>
>
> --
> Jean-Louis Monteiro
> http://twitter.com/jlouismonteiro
> http://www.tomitribe.com
>
>
> On Fri, Jun 27, 2014 at 6:12 PM, Diego Cattelan <ca...@gmail.com>
> wrote:
>
>> Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
>>
>> <TransactionManager id="Default Transaction Manager"
>> type="TransactionManager">
>> defaultTransactionTimeout = 1 minutes
>>
>> I expect an exception after a minute of work and so this is the result :
>>
>> Caused by: java.lang.Exception: Transaction has timed out
>> at
>>
>> org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:266)
>>
>> but in and @Asynchronous method I never see the time out exception. The
>> asynchronous method completes succesfully without any exception but at the
>> end it sends a transaction rollback to the database.
>>
>> What I'm doing wrong ? Thank you.
>>
>>
>>
>> --
>> View this message in context:
>> http://tomee-openejb.979440.n4.nabble.com/Transaction-manager-time-out-tp4670223.html
>> Sent from the TomEE Users mailing list archive at Nabble.com.
>>
Re: Transaction manager time out
Posted by Jean-Louis Monteiro <jl...@tomitribe.com>.
Yep, in container managed transaction, the transaction is
committed/rollbacked by the container at the end of the method flow
processing including any interceptor for your information.
For your information as well, the timeout does not apply as soon as the
commit is sent to the RDBMS. It's only a timer between the begin and the
commit/rollback instructions.
But it's only checked by Geronimo Transaction Manager during commit /
rollback instructions.
There is no daemon threads responsible for sending the timeout exception as
soon as the time exceeds
--
Jean-Louis Monteiro
http://twitter.com/jlouismonteiro
http://www.tomitribe.com
On Fri, Jun 27, 2014 at 6:12 PM, Diego Cattelan <ca...@gmail.com>
wrote:
> Hi, I'm playing with TransactionManager,s on TomEE 1.6.0.2, java 7
>
> <TransactionManager id="Default Transaction Manager"
> type="TransactionManager">
> defaultTransactionTimeout = 1 minutes
>
> I expect an exception after a minute of work and so this is the result :
>
> Caused by: java.lang.Exception: Transaction has timed out
> at
>
> org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:266)
>
> but in and @Asynchronous method I never see the time out exception. The
> asynchronous method completes succesfully without any exception but at the
> end it sends a transaction rollback to the database.
>
> What I'm doing wrong ? Thank you.
>
>
>
> --
> View this message in context:
> http://tomee-openejb.979440.n4.nabble.com/Transaction-manager-time-out-tp4670223.html
> Sent from the TomEE Users mailing list archive at Nabble.com.
>