persistence@glassfish.java.net

Re: MySQL and entity-persistence-tests failures?

From: Tom Ware <tom.ware_at_oracle.com>
Date: Fri, 09 Mar 2007 12:58:08 -0500

Hi,

  I suspect we should do some more JPA testing on MySQL and make some
updates to the Platform. The reason some platforms have issues is that
the platforms were part of the original TopLink code and were initially
tested prior to the JPA implementation. Not all of these platforms have
yet been cerified on JPA - and as a result some of the extensions we
made to implement JPA may not have been fully tested on those platforms.

  I suggest you enter a bug for the issues you are seeing on MySQL. I
beleive MySQL should be one of the platforms we certify on fairly soon
due to its popularity.

-Tom

Michael Bouschen wrote:

>Hi Wonseok,
>
>I see a lot of failures come from JPQL queries using the TRIM function.
>It looks like we have to double check what kind of TRIM support MySQL
>provides and maybe we need to adapt the MySQL database platform
>accordingly. What do you think?
>
>Regards Michael
>
>
>
>>Hi Tom, Michael, and others
>>
>>I'm trying to run latest entity-persistence-tests on MySQL database,
>>but I'm having problems like below. Is this known issue?
>>
>>MySQL version: 5.0.24a, Driver: Connector/J 5.0.5
>>
>>test:
>> [echo] Running test with mysql.properties on
>>jdbc:mysql://localhost/test
>> [junit] Running
>>oracle.toplink.essentials.testing.tests.FullRegressionTestSuite
>> [junit] Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLSyntaxErrorException : You have an
>>error in your SQL syntax; check the manual that corresponds to your
>>MySQL server version for the right syntax to use near ' 'M') =
>>'anotick')' at line 1Error Code: 1064
>> [junit] Call:SELECT CUST_ID, NAME, CUST_VERSION, CITY FROM
>>CMP3_CUSTOMER WHERE (LTRIM(CITY, ?) = ?)
>> [junit] bind => [M, anotick]
>> [junit]
>>Query:ReadAllQuery(oracle.toplink.essentials.testing.models.cmp3.relationships.Customer))
>> [junit] [TopLink Info]: 2007.03.09
>>09:00:34.042--ServerSession(32316171)--TopLink, version: Oracle
>>TopLink Essentials - 2.0 (Build SNAPSHOT (03/09/2007))
>> [junit] [TopLink Info]: 2007.03.09
>>09:00:34.068--ServerSession(4212068)--TopLink, version: Oracle TopLink
>>Essentials - 2.0 (Build SNAPSHOT (03/09/2007))
>> [junit] Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error
>>in your SQL syntax; check the manual that corresponds to your MySQL
>>server version for the right syntax to use near ' 'M') = 'anotick')'
>>at line 1Error Code: 1064
>> [junit] Call:SELECT CUST_ID, CITY, NAME, CUST_VERSION FROM
>>CMP3_FIELDACCESS_CUSTOMER WHERE (LTRIM(CITY, ?) = ?)
>> [junit] bind => [M, anotick]
>> [junit]
>>Query:ReadAllQuery(oracle.toplink.essentials.testing.models.cmp3.fieldaccess.relationships.Customer
>>))
>> [junit] Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException:
>>Duplicate entry '518' for key 1Error Code: 1062
>> [junit] Call:INSERT INTO TL_CMP3_EMPLOYEE (EMP_ID, VERSION,
>>F_NAME) SELECT t2.EMP_ID, (t0.VERSION + ?), ? FROM CMP3_SALARY t3,
>>CMP3_EMPLOYEE t2, CMP3_SALARY t1, CMP3_EMPLOYEE t0 WHERE (((t2.F_NAME
>>= ?) AND (t3.EMP_ID = t2.EMP_ID)) AND (t1.EMP_ID = t0.EMP_ID))
>> [junit] bind => [1, CHANGED, Bob]
>> [junit] Query:UpdateAllQuery())
>> [junit] Tests run: 612, Failures: 7, Errors: 3, Time elapsed:
>>36.15 sec
>> [junit] Test
>>oracle.toplink.essentials.testing.tests.FullRegressionTestSuite FAILED
>>
>>Testsuite: oracle.toplink.essentials.testing.tests.FullRegressionTestSuite
>>Tests run: 612, Failures: 7, Errors: 3, Time elapsed: 36.15 sec
>>------------- Standard Output ---------------
>>[TopLink Info]: 2007.03.09 09:00:34.068--ServerSession
>>(4212068)--TopLink, version: Oracle TopLink Essentials - 2.0 (Build
>>SNAPSHOT (03/09/2007))
>>------------- ---------------- ---------------
>>
>>Testcase: testPersistRemoved took 0.371 sec
>> FAILED
>>i=10: Transaction secondFlush RolledBack employeeReadFromCache ==
>>null; employeeReadFromDB == null; i=16: firstFlush secondFlush
>>thirdFlush RolledBack employeeReadFromDB != null; i=20: firstFlush
>>thirdFlush RolledBack employeeReadFromDB != null; i=22: firstFlush
>>RolledBack employeeReadFromDB != null; i=24: secondFlush thirdFlush
>>RolledBack employeeReadFromDB != null; i=28: thirdFlush RolledBack
>>employeeReadFromDB != null;
>>junit.framework.AssertionFailedError: i=10: Transaction secondFlush
>>RolledBack employeeReadFromCache == null; employeeReadFromDB == null;
>>i=16: firstFlush secondFlush thirdFlush RolledBack employeeReadFromDB
>>!= null; i=20: firstFlush thirdFlush RolledBack employeeReadFromDB !=
>>null; i=22: firstFlush RolledBack employeeReadFromDB != null; i=24:
>>secondFlush thirdFlush RolledBack employeeReadFromDB != null; i=28:
>>thirdFlush RolledBack employeeReadFromDB != null;
>> at
>>oracle.toplink.essentials.testing.tests.cmp3.advanced.EntityManagerJUnitTestSuite.testPersistRemoved(EntityManagerJUnitTestSuite.java:849)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java:23)
>>
>>Testcase: testExtendedPersistenceContext took 0.085 sec
>> FAILED
>>empNew is in the db after the third transaction rolled back
>>junit.framework.AssertionFailedError: empNew is in the db after the
>>third transaction rolled back
>> at
>>oracle.toplink.essentials.testing.tests.cmp3.advanced.EntityManagerJUnitTestSuite.testExtendedPersistenceContext
>>(EntityManagerJUnitTestSuite.java:1466)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java :23)
>>
>>Testcase: unknown took 0 sec
>> FAILED
>>Warning, RAW type used for Primary keys only supported on Oracle
>>junit.framework.AssertionFailedError: Warning, RAW type used for
>>Primary keys only supported on Oracle
>> at
>>oracle.toplink.essentials.testing.tests.cmp3.datatypes.arraypks.PrimitiveArrayPKCachingJUnitTestCase$1.setUp(PrimitiveArrayPKCachingJUnitTestCase.java:46)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java :18)
>> at junit.extensions.TestSetup.run(TestSetup.java:23)
>>
>>Testcase: testLeftTrimWithTrimChar took 0.116 sec
>> Caused an ERROR
>>
>>Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLSyntaxErrorException : You have an
>>error in your SQL syntax; check the manual that corresponds to your
>>MySQL server version for the right syntax to use near ' 'M') =
>>'anotick')' at line 1Error Code: 1064
>>Call:SELECT CUST_ID, NAME, CUST_VERSION, CITY FROM CMP3_CUSTOMER WHERE
>>(LTRIM(CITY, ?) = ?)
>> bind => [M, anotick]
>>Query:ReadAllQuery(oracle.toplink.essentials.testing.models.cmp3.relationships.Customer)
>>Local Exception Stack:
>>Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build
>>SNAPSHOT (03/09/2007))):
>>oracle.toplink.essentials.exceptions.DatabaseException
>>Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error
>>in your SQL syntax; check the manual that corresponds to your MySQL
>>server version for the right syntax to use near ' 'M') = 'anotick')'
>>at line 1Error Code: 1064
>>Call:SELECT CUST_ID, NAME, CUST_VERSION, CITY FROM CMP3_CUSTOMER WHERE
>>(LTRIM(CITY, ?) = ?)
>> bind => [M, anotick]
>>Query:ReadAllQuery(oracle.toplink.essentials.testing.models.cmp3.relationships.Customer)
>> at
>>oracle.toplink.essentials.exceptions.DatabaseException.sqlException(DatabaseException.java:303)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:551)
>>
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:437)
>> at
>>oracle.toplink.essentials.threetier.ServerSession.executeCall(ServerSession.java:465)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:213)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall
>>(DatasourceCallQueryMechanism.java:199)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeSelectCall(DatasourceCallQueryMechanism.java:270)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.selectAllRows
>>(DatasourceCallQueryMechanism.java:600)
>> at
>>oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.selectAllRowsFromTable(ExpressionQueryMechanism.java:2217)
>> at
>>oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.selectAllRows
>>(ExpressionQueryMechanism.java:2195)
>> at
>>oracle.toplink.essentials.queryframework.ReadAllQuery.executeObjectLevelReadQuery(ReadAllQuery.java:302)
>> at
>>oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.executeDatabaseQuery
>>(ObjectLevelReadQuery.java:709)
>> at
>>oracle.toplink.essentials.queryframework.DatabaseQuery.execute(DatabaseQuery.java:609)
>> at
>>oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java
>>:677)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.internalExecuteQuery(AbstractSession.java:1815)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java
>>:937)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:894)
>> at
>>oracle.toplink.essentials.testing.tests.cmp3.relationships.ExpressionJUnitTestSuite.testLeftTrimWithTrimChar
>>(ExpressionJUnitTestSuite.java:87)
>>Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You
>>have an error in your SQL syntax; check the manual that corresponds to
>>your MySQL server version for the right syntax to use near ' 'M') =
>>'anotick')' at line 1
>> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
>> at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2941)
>> at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
>> at com.mysql.jdbc.MysqlIO.sqlQueryDirect (MysqlIO.java:1715)
>> at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
>> at
>>com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1268)
>> at com.mysql.jdbc.PreparedStatement.executeQuery
>>(PreparedStatement.java:1403)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeSelect(DatabaseAccessor.java:711)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall
>>(DatabaseAccessor.java:486)
>>
>>Testcase: testLeftTrimWithTrimChar took 0.111 sec
>> Caused an ERROR
>>
>>Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error
>>in your SQL syntax; check the manual that corresponds to your MySQL
>>server version for the right syntax to use near ' 'M') = 'anotick')'
>>at line 1Error Code: 1064
>>Call:SELECT CUST_ID, CITY, NAME, CUST_VERSION FROM
>>CMP3_FIELDACCESS_CUSTOMER WHERE (LTRIM(CITY, ?) = ?)
>> bind => [M, anotick]
>>Query:ReadAllQuery(oracle.toplink.essentials.testing.models.cmp3.fieldaccess.relationships.Customer
>>)
>>Local Exception Stack:
>>Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build
>>SNAPSHOT (03/09/2007))):
>>oracle.toplink.essentials.exceptions.DatabaseException
>>Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLSyntaxErrorException : You have an
>>error in your SQL syntax; check the manual that corresponds to your
>>MySQL server version for the right syntax to use near ' 'M') =
>>'anotick')' at line 1Error Code: 1064
>>Call:SELECT CUST_ID, CITY, NAME, CUST_VERSION FROM
>>CMP3_FIELDACCESS_CUSTOMER WHERE (LTRIM(CITY, ?) = ?)
>> bind => [M, anotick]
>>Query:ReadAllQuery(oracle.toplink.essentials.testing.models.cmp3.fieldaccess.relationships.Customer)
>> at
>>oracle.toplink.essentials.exceptions.DatabaseException.sqlException(DatabaseException.java
>>:303)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:551)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java
>>:437)
>> at
>>oracle.toplink.essentials.threetier.ServerSession.executeCall(ServerSession.java:465)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java
>>:213)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:199)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeSelectCall
>>(DatasourceCallQueryMechanism.java:270)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.selectAllRows(DatasourceCallQueryMechanism.java:600)
>> at
>>oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.selectAllRowsFromTable
>>(ExpressionQueryMechanism.java:2217)
>> at
>>oracle.toplink.essentials.internal.queryframework.ExpressionQueryMechanism.selectAllRows(ExpressionQueryMechanism.java:2195)
>> at
>>oracle.toplink.essentials.queryframework.ReadAllQuery.executeObjectLevelReadQuery
>>(ReadAllQuery.java:302)
>> at
>>oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.executeDatabaseQuery(ObjectLevelReadQuery.java:709)
>> at oracle.toplink.essentials.queryframework.DatabaseQuery.execute(
>>DatabaseQuery.java:609)
>> at
>>oracle.toplink.essentials.queryframework.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:677)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.internalExecuteQuery
>>(AbstractSession.java:1815)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:937)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java
>>:894)
>> at
>>oracle.toplink.essentials.testing.tests.cmp3.fieldaccess.relationships.ExpressionJUnitTestSuite.testLeftTrimWithTrimChar(ExpressionJUnitTestSuite.java:87)
>>Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException : You
>>have an error in your SQL syntax; check the manual that corresponds to
>>your MySQL server version for the right syntax to use near ' 'M') =
>>'anotick')' at line 1
>> at com.mysql.jdbc.SQLError.createSQLException (SQLError.java:936)
>> at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2941)
>> at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
>> at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715)
>> at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
>> at
>>com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1268)
>> at
>>com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java
>>:1403)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeSelect(DatabaseAccessor.java:711)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java
>>:486)
>>
>>Testcase: testSelectPhoneNumberAreaCode took 0.004 sec
>> FAILED
>>SimpleSelectPhoneNumberAreaCode test failed !
>>junit.framework.AssertionFailedError: SimpleSelectPhoneNumberAreaCode
>>test failed !
>> at
>>oracle.toplink.essentials.testing.tests.ejb.ejbqltesting.JUnitEJBQLUnitTestSuite.testSelectPhoneNumberAreaCode(JUnitEJBQLUnitTestSuite.java:246)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java:23)
>>
>>Testcase: testOrderByExpressionWithSelect took 0.005 sec
>> FAILED
>>OrderBy expression test failed: data validation error expected:<13>
>>but was:<5>
>>junit.framework.AssertionFailedError: OrderBy expression test failed:
>>data validation error expected:<13> but was:<5>
>> at
>>oracle.toplink.essentials.testing.tests.ejb.ejbqltesting.JUnitEJBQLExamplesTestSuite.testOrderByExpressionWithSelect
>>(JUnitEJBQLExamplesTestSuite.java:697)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java :23)
>>
>>Testcase: testDeleteExpression took 0.003 sec
>>Testcase: testComplexDeleteExpression took 0.004 sec
>> FAILED
>>Complex Delete Expression test failed: customer to delete not found
>>expected:<1> but was:<0>
>>junit.framework.AssertionFailedError: Complex Delete Expression test
>>failed: customer to delete not found expected:<1> but was:<0>
>> at
>>oracle.toplink.essentials.testing.tests.ejb.ejbqltesting.JUnitEJBQLExamplesTestSuite.testComplexDeleteExpression
>>(JUnitEJBQLExamplesTestSuite.java:731)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java :23)
>>
>>Testcase: updateAllTest took 0.013 sec
>>Testcase: namedQueryCloneTest took 0.004 sec
>> FAILED
>>Named query clone test failed: the first result should be 4
>>expected:<3> but was:<4>
>>junit.framework.AssertionFailedError : Named query clone test failed:
>>the first result should be 4 expected:<3> but was:<4>
>> at
>>oracle.toplink.essentials.testing.tests.ejb.ejbqltesting.JUnitEJBQLExamplesTestSuite.namedQueryCloneTest(JUnitEJBQLExamplesTestSuite.java
>>:840)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java:23)
>>
>>Testcase: updateUnqualifiedAttributeInWhere took 0.568 sec
>> Caused an ERROR
>>
>>Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException:
>>Duplicate entry '518' for key 1Error Code: 1062
>>Call:INSERT INTO TL_CMP3_EMPLOYEE (EMP_ID, VERSION, F_NAME) SELECT
>>t2.EMP_ID, (t0.VERSION + ?), ? FROM CMP3_SALARY t3, CMP3_EMPLOYEE t2,
>>CMP3_SALARY t1, CMP3_EMPLOYEE t0 WHERE (((t2.F_NAME = ?) AND
>>(t3.EMP_ID = t2.EMP_ID)) AND (t1.EMP_ID = t0.EMP_ID))
>> bind => [1, CHANGED, Bob]
>>Query:UpdateAllQuery()
>>Local Exception Stack:
>>Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build
>>SNAPSHOT (03/09/2007))):
>>oracle.toplink.essentials.exceptions.DatabaseException
>>Internal Exception:
>>com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException:
>>Duplicate entry '518' for key 1Error Code: 1062
>>Call:INSERT INTO TL_CMP3_EMPLOYEE (EMP_ID, VERSION, F_NAME) SELECT
>>t2.EMP_ID, (t0.VERSION + ?), ? FROM CMP3_SALARY t3, CMP3_EMPLOYEE t2,
>>CMP3_SALARY t1, CMP3_EMPLOYEE t0 WHERE ((( t2.F_NAME = ?) AND
>>(t3.EMP_ID = t2.EMP_ID)) AND (t1.EMP_ID = t0.EMP_ID))
>> bind => [1, CHANGED, Bob]
>>Query:UpdateAllQuery()
>> at
>>oracle.toplink.essentials.exceptions.DatabaseException.sqlException(DatabaseException.java
>>:295)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:639)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeNoSelect
>>(DatabaseAccessor.java:688)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:477)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeCall
>>(DatabaseAccessor.java:437)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeCall(AbstractSession.java:675)
>> at
>>oracle.toplink.essentials.internal.sessions.IsolatedClientSession.executeCall
>>(IsolatedClientSession.java:135)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:213)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.updateAllUsingTempTables
>>(DatasourceCallQueryMechanism.java:749)
>> at
>>oracle.toplink.essentials.internal.queryframework.DatasourceCallQueryMechanism.updateAll(DatasourceCallQueryMechanism.java:711)
>> at
>>oracle.toplink.essentials.queryframework.UpdateAllQuery.executeDatabaseQuery
>>(UpdateAllQuery.java:165)
>> at
>>oracle.toplink.essentials.queryframework.DatabaseQuery.execute(DatabaseQuery.java:609)
>> at
>>oracle.toplink.essentials.queryframework.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java
>>:536)
>> at
>>oracle.toplink.essentials.queryframework.ModifyAllQuery.executeInUnitOfWork(ModifyAllQuery.java:153)
>> at
>>oracle.toplink.essentials.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java
>>:2219)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:937)
>> at
>>oracle.toplink.essentials.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:909)
>>
>> at
>>oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.executeUpdate(EJBQueryImpl.java:372)
>> at
>>oracle.toplink.essentials.testing.tests.ejb.ejbqltesting.JUnitEJBQLModifyTestSuite.updateUnqualifiedAttributeInWhere
>>(JUnitEJBQLModifyTestSuite.java:320)
>> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
>> at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
>> at junit.extensions.TestSetup.run(TestSetup.java :23)
>>Caused by:
>>com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException:
>>Duplicate entry '518' for key 1
>> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931)
>> at com.mysql.jdbc.MysqlIO.checkErrorPacket (MysqlIO.java:2941)
>> at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
>> at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715)
>> at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
>> at
>>com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1268)
>> at
>>com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1541)
>> at com.mysql.jdbc.PreparedStatement.executeUpdate(
>>PreparedStatement.java:1455)
>> at
>>com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1440)
>> at
>>oracle.toplink.essentials.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java
>>:632)
>>
>>
>>
>>