tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Blevins <david.blev...@visi.com>
Subject Re: IllegalStateException: Cannot log transactions
Date Sat, 21 Jun 2008 03:11:55 GMT

On May 23, 2008, at 7:11 AM, Martin Vysny wrote:

> On Thu, 2008-05-22 at 22:31 -0700, David Blevins wrote:
>> On May 21, 2008, at 6:04 AM, Martin Vysny wrote:
>>
>>> On Wed, 2008-05-21 at 14:18 +0530, Manu George wrote:
>>>> This looks like the XAResource that is being passed to the geronimo
>>>> transaction manager is not a named XA Resource. So transactions  
>>>> will
>>>> not be logged in this case. I think you can open a JIRA as it looks
>>>> like a bug.
>>>>
>>
>> The crazy thing with this is that the HOWL transaction logging should
>> be off by default.  Looking at our defaults for the standalone  
>> server,
>> it seems like we may have mismatching configuration defaults.   Tx
>> logging seems to be enabled in the TransactionManager by default
>> (MaxLogFiles=1) but shut off on the DataSource side
>> (TxRecovery=false), both should agree.
>>
>> Adding this to your openejb.xml file should shut off tx logging and
>> make the error go away:
>>
>>  <TransactionManager id="TransactionManager">
>>      MaxLogFiles = 0
>>  </TransactionManager>
>>
>> Alternatively, setting the "TxRecovery" property to "true" on your
>> DataSources in the openejb.xml should turn on tx logging (for your
>> datasources at least) and should also make the error go away.
>>
>> Let us know which way you go.  This will definitely be a good one for
>> the archives some docs should follow shortly.
>>
>> -David
>>
>
> Thanks for the tips, David!
> Setting the MaxLogFiles property to zero resulted in:
> 16:04:54,197 WARN  [main service] Property "MaxLogFiles" not supported
> by "TransactionManager"
> and the exception was still visible in the log (OpenEJB3.0)
>
> Setting the TxRecovery property for the JDBC database Connector fixed
> the error, and a warning has appeared instead. Better than an error
> indeed, however can I get rid of this warning as well? :)

Hi Martin, I've made a couple adjustments in this code.  If you could  
give them a try that'd be great.

I've reworked all the flags for "TxRecovery".  Essentially I've added  
it to the <TransactionManager> and removed it from the <Resource>.  If  
you set TxRecovery=true in the TransactionManager configuration then  
the right magic should take place to setup the resources correctly --  
i.e. you no longer need to configure a "TxRecovery" flag on them.

Update your poms to 3.1-SNAPSHOT or grab a snapshot distro:
http://people.apache.org/repo/m2-snapshot-repository/org/apache/openejb/openejb-standalone/3.1-SNAPSHOT/openejb-standalone-3.1-20080621.030147-2.zip

The default for TxRecovery is false, so to test the recovery add this  
to your openejb.xml:

  <TransactionManager id="TransactionManager">
      TxRecovery = true
  </TransactionManager>

This may not eliminate the "Unknown start flag" error, but it will  
certainly narrow down the possible issues.  Let us know how it goes.

-David


Mime
View raw message