Bug 274584

Summary: testUpdateUsingTempStorageWithParameter and testUpdateUsingTempStorage failed on SQL Server 2k5
Product: z_Archived Reporter: Edwin Tang <edwin.tang>
Component: EclipselinkAssignee: Kevin Yuan <kevin.yuan>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: kevin.yuan
Version: unspecifiedKeywords: test
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Edwin Tang CLA 2009-04-30 16:07:26 EDT
testUpdateUsingTempStorageWithParameter and testUpdateUsingTempStorage failed on SQL Server 2k5

Stack Trace:
============
Internal Exception: com.microsoft.sqlserver.jdbc.SQLServerException: Invalid object name '#CMP3_SALARY'. Error Code: 208 Call: INSERT INTO #CMP3_SALARY (EMP_ID, SALARY) SELECT t0.EMP_ID, t0.ROOM_NUM FROM CMP3_EMPLOYEE t0, CMP3_SALARY t1 WHERE ((t0.F_NAME = ?) AND (t1.EMP_ID = t0.EMP_ID)) bind => [testUpdateUsingTempStorage] Query: UpdateAllQuery(referenceClass=Employee sql="CREATE TABLE #CMP3_SALARY (EMP_ID INTEGER NOT NULL, SALARY INTEGER NULL, PRIMARY KEY (EMP_ID))")

Local Exception Stack:
Exception [EclipseLink-4002] (Eclipse Persistence Services - 1.1.1.qualifier): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.microsoft.sqlserver.jdbc.SQLServerException: Invalid object name '#CMP3_SALARY'.
Error Code: 208
Call: INSERT INTO #CMP3_SALARY (EMP_ID, SALARY) SELECT t0.EMP_ID, t0.ROOM_NUM FROM CMP3_EMPLOYEE t0, CMP3_SALARY t1 WHERE ((t0.F_NAME = ?) AND (t1.EMP_ID = t0.EMP_ID))
bind => [testUpdateUsingTempStorage]
Query: UpdateAllQuery(referenceClass=Employee sql="CREATE TABLE #CMP3_SALARY (EMP_ID INTEGER NOT NULL, SALARY INTEGER NULL, PRIMARY KEY (EMP_ID))")
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:323)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:767)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeNoSelect(DatabaseAccessor.java:833)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:558)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:501)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeCall(AbstractSession.java:872)
at org.eclipse.persistence.internal.sessions.IsolatedClientSession.executeCall(IsolatedClientSession.java:132)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:205)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.updateAllUsingTempTables(DatasourceCallQueryMechanism.java:751)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.updateAll(DatasourceCallQueryMechanism.java:713)
at org.eclipse.persistence.queries.UpdateAllQuery.executeDatabaseQuery(UpdateAllQuery.java:153)
at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:664)
at org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:583)
at org.eclipse.persistence.queries.ModifyAllQuery.executeInUnitOfWork(ModifyAllQuery.java:144)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2755)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1181)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1165)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1139)
at org.eclipse.persistence.internal.jpa.EJBQueryImpl.executeUpdate(EJBQueryImpl.java:424)
at org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.internalUpdateUsingTempStorage(EntityManagerJUnitTestSuite.java:5485)
at org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorageWithParameter(EntityManagerJUnitTestSuite.java:5440)
at org.eclipse.persistence.testing.framework.junit.JUnitTestCase.runBare(JUnitTestCase.java:359)
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Invalid object name '#CMP3_SALARY'.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(Unknown Source)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate(Unknown Source)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:758)
Comment 1 Kevin Yuan CLA 2010-03-24 16:23:12 EDT
Already fixed this issue with part of bug 299418 fix, had verified on 2.0.2 and trunk against SQL Server 2K5, both of these two tests passed.
Comment 2 Eclipse Webmaster CLA 2022-06-09 10:09:02 EDT
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink