persistence@glassfish.java.net

Re: entity-persistence-test failure on derby

From: Andrei Ilitchev <andrei.ilitchev_at_oracle.com>
Date: Fri, 8 Dec 2006 10:47:57 -0500

It's https://glassfish.dev.java.net/issues/show_bug.cgi?id=1451
----- Original Message -----
From: "Michael Bouschen" <Michael.Bouschen_at_Sun.COM>
To: <persistence_at_glassfish.dev.java.net>
Sent: Friday, December 08, 2006 10:34 AM
Subject: entity-persistence-test failure on derby


> Hi,
>
> I experience a failure with
> EntityManagerJUnitTestSuite.testUpdateUsingTempStorage when running the
> entity-persistence-test on derby:
> Testcase: testUpdateUsingTempStorage took 0,125 sec
> FAILED
> Exception thrown: class
> oracle.toplink.essentials.exceptions.DatabaseException
> junit.framework.AssertionFailedError: Exception thrown: class
> oracle.toplink.essentials.exceptions.DatabaseException
> at
> oracle.toplink.essentials.testing.tests.cmp3.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage(EntityManagerJUnitTestSuite.java:3187)
> ...
>
> On line 3181 test method testUpdateUsingTempStorage executes a bulk update
> query:
> UPDATE Employee e set e.salary = e.roomNumber, e.roomNumber = e.salary,
> e.address = null where e.firstName = '" + firstName + "'"
> This results in a DatabaseException:
> [junit] Internal Exception: org.apache.derby.client.am.SqlException:
> Syntax error: Encountered "NULL" at line 1, coumn 111.Error Code: -1
> [junit] Call:INSERT INTO session.TL_CMP3_EMPLOYEE (EMP_ID, VERSION,
> ADDR_ID, ROOM_NUM) SELECT t0.EMP_ID, (t0.VERSIO + 1), NULL, t1.SALARY FROM
> CMP3_EMPLOYEE t0, CMP3_SALARY t1 WHERE ((t0.F_NAME =
> 'testUpdateUsingTempStorage') AND (t1.MP_ID = t0.EMP_ID))
>
> All the tests succeed when running on oracle. Any idea?
>
> Regards Michael
>