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

Reply via email to