Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 335446 - on Postgresql, testUpdateUsingTempStorage failed from JPA out-of container testing
Summary: on Postgresql, testUpdateUsingTempStorage failed from JPA out-of container te...
Status: RESOLVED WONTFIX
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Eclipselink (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard: postgresql
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-26 09:34 EST by Praba Vijayaratnam CLA
Modified: 2022-06-09 10:02 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Praba Vijayaratnam CLA 2011-01-26 09:34:44 EST
In trunk(2.3) and 2.2.0, following two tests from JPA out-of container testsuite failed on Postgresql:

org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage
org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage

This seems to be testcase issue.

Local Exception Stack: 
Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.0.v20110126-r8885): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: org.postgresql.util.PSQLException: ERROR: column "addr_id" is of type integer but expression is of type character varying
Hint: You will need to rewrite or cast the expression.
Position: 88
Error Code: 0
Call: INSERT INTO TL_CMP3_FA_EMPLOYEE (EMP_ID, ADDR_ID, VERSION, ROOM_NUM) SELECT t0.EMP_ID, ?, (t0.VERSION + ?), t1.SALARY FROM CMP3_FA_EMPLOYEE t0, CMP3_FA_SALARY t1 WHERE ((t0.F_NAME = ?) AND (t1.EMP_ID = t0.EMP_ID))
bind => [null, 1, testUpdateUsingTempStorage]
Query: UpdateAllQuery(referenceClass=Employee sql="CREATE LOCAL TEMPORARY TABLE TL_CMP3_FA_SALARY (EMP_ID INTEGER NOT NULL, SALARY INTEGER, PRIMARY KEY (EMP_ID)) ON COMMIT DROP")
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:333)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.processExceptionForCommError(DatabaseAccessor.java:1453)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:797)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeNoSelect(DatabaseAccessor.java:865)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:584)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:527)
at org.eclipse.persistence.internal.sessions.AbstractSession.basicExecuteCall(AbstractSession.java:1710)
at org.eclipse.persistence.sessions.server.ClientSession.executeCall(ClientSession.java:234)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:207)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.updateAllUsingTempTables(DatasourceCallQueryMechanism.java:824)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.updateAll(DatasourceCallQueryMechanism.java:786)
at org.eclipse.persistence.queries.UpdateAllQuery.executeDatabaseQuery(UpdateAllQuery.java:153)
at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:807)
at org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:709)
at org.eclipse.persistence.queries.ModifyAllQuery.executeInUnitOfWork(ModifyAllQuery.java:145)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2837)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1509)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1491)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1465)
at org.eclipse.persistence.internal.jpa.EJBQueryImpl.executeUpdate(EJBQueryImpl.java:537)
at org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.EntityManagerJUnitTestSuite.internalUpdateUsingTempStorage(EntityManagerJUnitTestSuite.java:3807)
at org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage(EntityManagerJUnitTestSuite.java:3751)
at org.eclipse.persistence.testing.framework.junit.JUnitTestCase.runBare(JUnitTestCase.java:503)
at org.eclipse.persistence.testing.framework.TestExecutor.execute(TestExecutor.java:248)
at org.eclipse.persistence.testing.framework.TestModel.execute(TestModel.java:208)
at org.eclipse.persistence.testing.framework.TestCollection.run(TestCollection.java:313)
Caused by: org.postgresql.util.PSQLException: ERROR: column "addr_id" is of type integer but expression is of type character varying
Hint: You will need to rewrite or cast the expression.
Position: 88
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2102)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1835)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:500)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:334)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:79
Comment 1 Martin Grebac CLA 2014-12-10 14:57:19 EST
Old versions.
Comment 2 Eclipse Webmaster CLA 2022-06-09 10:02:52 EDT
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink