Hello, Here is my test result. I added log line into initialize() method.
It looks like the torque initialize process has a problem for checking Tranasction Support or Not. During initialize process, the IDBroker call the TorqueInstance for checking the Connection support transaction. Because the TorqueInstance doesn't initialize yet, it always set false even the connection support transaction. 2005-06-23 23:31:14,609 [main] DEBUG org.apache.torque.TorqueInstance - init([EMAIL PROTECTED]) 2005-06-23 23:31:14,609 [main] DEBUG org.apache.torque.TorqueInstance - setConfiguration([EMAIL PROTECTED]) 2005-06-23 23:31:14,609 [main] DEBUG org.apache.torque.TorqueInstance - initialize() 2005-06-23 23:31:14,625 [main] DEBUG org.apache.torque.TorqueInstance - setConfiguration([EMAIL PROTECTED]) 2005-06-23 23:31:14,625 [main] DEBUG org.apache.torque.TorqueInstance - initAdapters([EMAIL PROTECTED]) 2005-06-23 23:31:14,718 [main] DEBUG org.apache.torque.TorqueInstance - Adding mysql -> easydesk as Adapter 2005-06-23 23:31:14,718 [main] DEBUG org.apache.torque.TorqueInstance - initDataSourceFactories([EMAIL PROTECTED]) 2005-06-23 23:31:14,718 [main] DEBUG org.apache.torque.TorqueInstance - handle: easydesk DataSourceFactory: org.apache.torque.dsfactory.SharedPoolDataSourceFactory 2005-06-23 23:31:14,828 [main] DEBUG org.apache.torque.TorqueInstance - getConfiguration() = [EMAIL PROTECTED] 2005-06-23 23:31:14,828 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - Starting initCPDS 2005-06-23 23:31:14,843 [main] DEBUG org.apache.torque.TorqueInstance - getConfiguration() = [EMAIL PROTECTED] 2005-06-23 23:31:14,843 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - applyConfiguration([EMAIL PROTECTED], [EMAIL PROTECTED]) 2005-06-23 23:31:14,843 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - applyConfiguration([EMAIL PROTECTED], [EMAIL PROTECTED]) 2005-06-23 23:31:14,890 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], driver, org.gjt.mm.mysql.Driver) 2005-06-23 23:31:14,906 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], url, jdbc:mysql://localhost:3306/easydesk?zeroDateTimeBehavior=round&useNewIO=true) 2005-06-23 23:31:14,906 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], user, root) 2005-06-23 23:31:14,906 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], password, (value not logged)) 2005-06-23 23:31:14,906 [main] DEBUG org.apache.torque.dsfactory.SharedPoolDataSourceFactory - Starting initJdbc2Pool 2005-06-23 23:31:14,937 [main] DEBUG org.apache.torque.TorqueInstance - getConfiguration() = [EMAIL PROTECTED] 2005-06-23 23:31:14,937 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - applyConfiguration([EMAIL PROTECTED], [EMAIL PROTECTED]) 2005-06-23 23:31:14,937 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - applyConfiguration([EMAIL PROTECTED], [EMAIL PROTECTED]) 2005-06-23 23:31:14,984 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], maxActive, 60) 2005-06-23 23:31:14,984 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], maxWait, 30000) 2005-06-23 23:31:14,984 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], testOnBorrow, true) 2005-06-23 23:31:14,984 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], timeBetweenEvictionRunsMillis, -1) 2005-06-23 23:31:14,984 [main] DEBUG org.apache.torque.dsfactory.AbstractDataSourceFactory - setSimpleProperty([EMAIL PROTECTED], validationQuery, SELECT 1) 2005-06-23 23:31:15,000 [main] DEBUG org.apache.torque.TorqueInstance - Adding a dummy entry for default, mapped onto easydesk 2005-06-23 23:31:15,062 [main] DEBUG org.apache.torque.TorqueInstance - getConfiguration() = [EMAIL PROTECTED] 2005-06-23 23:31:15,078 [main] ERROR org.apache.torque.oid.IDBroker - org.apache.torque.TorqueException: Torque is not initialized. 2005-06-23 23:31:15,078 [main] WARN org.apache.torque.oid.IDBroker - IDBroker is being used with db 'easydesk', which does not support transactions. IDBroker attempts to use transactions to limit the possibility of duplicate key generation. Without transactions, duplicate key generation is possible if multiple JVMs are used or other means are used to write to the database. 2005-06-23 23:31:15,109 [Torque - ID Broker thread] DEBUG org.apache.torque.oid.IDBroker - IDBroker thread was started. 2005-06-23 23:31:17,703 [main] INFO org.apache.torque.TorqueInstance - Added Manager for Class: com.nannet.jettiger.om.JettigerUser -> com.nannet.jettiger.om.JettigerUserManager 2005-06-23 23:31:17,781 [main] DEBUG org.apache.torque.TorqueInstance - getConfiguration() = [EMAIL PROTECTED] 2005-06-23 23:31:17,781 [main] DEBUG org.apache.torque.TorqueInstance - initialize finished I could solved this problem by moving initialize finish flag set true when after dataSourceFactory initialize not completely finished the TorqueInstance. [EMAIL PROTECTED] db-torque]$ cvs diff src/java/org/apache/torque/TorqueInstance.java Index: src/java/org/apache/torque/TorqueInstance.java =================================================================== RCS file: /home/cvspublic/db-torque/src/java/org/apache/torque/TorqueInstance.java,v retrieving revision 1.11 diff -r1.11 TorqueInstance.java 149a150,151 > isInit = true; > 161c163 < isInit = true; --- > // isInit = true; But I am not sure what are side effects and it is right approach. Do we need seperate initailize process like connection setup parts and internal map and manger builder parts ? Also after the change, I got the following error runnig an application. 2005-06-24 07:00:51,359 [Thread-57] ERROR org.apache.torque.TorqueInstance - Error occured while closing connection. java.sql.SQLException: Attempted to use Connection after closed() was called. at org.apache.commons.dbcp.cpdsadapter.ConnectionImpl.assertOpen(ConnectionImpl.java:86) at org.apache.commons.dbcp.cpdsadapter.ConnectionImpl.close(ConnectionImpl.java:115) at org.apache.torque.TorqueInstance.closeConnection(TorqueInstance.java:824) at org.apache.torque.Torque.closeConnection(Torque.java:300) at org.apache.torque.util.Transaction.rollback(Transaction.java:172) at org.apache.torque.util.Transaction.safeRollback(Transaction.java:195) at com.nannet.jettiger.om.BaseActivity.save(BaseActivity.java:1344) at com.nannet.jettiger.om.BaseActivity.save(BaseActivity.java:1319) I am not sure is it also torque problem or our application problem. Does any one has similar problem ? ----- Original Message ----- From: "Thomas Fischer" <[EMAIL PROTECTED]> To: "Apache Torque Users List" <[email protected]> Sent: Thursday, June 23, 2005 4:39 PM Subject: Re: MySql InnoDB question > > > > > Hi, > > I am rather sure that this will not solve the problem, as the problem is > probably not in the IdBroker, but somewhere else. > Usually, if you see this message, there is something wrong in the > configuration. It would help to read the logs; if you do not have any, you > should configure logging for your application to find the error. > > Thomas > > > Andras Balogh <[EMAIL PROTECTED]> schrieb am 23.06.2005 09:02:00: > > > Hello, > > > > How did you configured the idMethod in your schema? You don't need > > IDBroker since mysql should > > support auto increment primary keys so you should go with > > idMethod="native" for tables with auto increment > > primary key. > > > > Best regards, > > Andras. > > > > > > Youngho Cho wrote: > > > > >Hello, > > > > > >I read TRQ278 for InnoDB related Issue. > > >It is about create tables and fk relations issue. > > >In my case, when I create tables using generated sql from xml. > > >I set SET FOREIGN_KEY_CHECKS=0; before execute the sql. > > >Than there is no complain. > > > > > >My problem is I would like to use transaction but the warn report > > said torque doesn't use transaction. > > >I use connector/j-3.1.7 driver. > > >Do I have to ask it to mysql driver mailling list ? > > >How you use torque with InnoDB ? > > > > > >Thanks. > > > > > >Youngho > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED]
