| Summary: | Merging Entity with BasicCollection inserts entry into BasicCollection table again. | ||||||
|---|---|---|---|---|---|---|---|
| Product: | z_Archived | Reporter: | Desmond Ng <desmond.ng> | ||||
| Component: | Eclipselink | Assignee: | Nobody - feel free to take it <nobody> | ||||
| Status: | CLOSED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | P3 | CC: | desmond.ng, eclipselink.foundation-inbox, tom.ware | ||||
| Version: | unspecified | ||||||
| Target Milestone: | --- | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Attachments: |
|
||||||
|
Description
Desmond Ng
Created attachment 173226 [details]
Test case.
The eclipselink.jar is not supplied in the test case to reduce file size. To reproduce drop the eclipselink.jar from 2.0.2 into the lib directory.
This does not occur in EclipseLink 1.0.1 setting initial target to 2.1.1. Since this release is close, after the bug is triaged, we will make a determination if the fix is low enough risk to include in the 2.1.1 release. Does this fix also need to appear in our next 2.0.x release? If the fix is low risk for 2.0.x, it will be great to be able to include it as it makes the OOTB experience better and works as expected. Since there is currently a workaround, and if the fix is complex, it is not crucial for it to be in 2.0.x. FYI: This issue appear to be fixed in our latest release. I will track down the change to assess the risk of fixing for 2.0.x. This also appear to be fixed in our latest 2.0.x code - please try the latest 2.0.3 nightly. I tested build 2.0.3.v20100805-r7973 with the provided test case, and it still fails with same problem. Here is my output from that version(with logging = FINEST). It does not seem to be failing for me, what am I missing?
[EL Finest]: 2010-08-18 09:50:54.498--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.session; value=true
[EL Finest]: 2010-08-18 09:50:54.529--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.exceptions; value=true
[EL Finest]: 2010-08-18 09:50:54.529--ServerSession(14306161)--Thread(Thread[main,5,main])--Begin predeploying Persistence Unit group-pu; session group; state Initial; factoryCount 0
[EL Finest]: 2010-08-18 09:50:54.529--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false
[EL Finest]: 2010-08-18 09:50:54.529--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.orm.throw.exceptions; default value=true
[EL Finer]: 2010-08-18 09:50:54.545--ServerSession(14306161)--Thread(Thread[main,5,main])--Searching for default mapping file in file:/C:/java/Recreations/basic_coll_dups/bin/
[EL Finer]: 2010-08-18 09:50:54.545--ServerSession(14306161)--Thread(Thread[main,5,main])--Searching for default mapping file in file:/C:/java/Recreations/basic_coll_dups/bin/
[EL Config]: 2010-08-18 09:50:54.654--ServerSession(14306161)--Thread(Thread[main,5,main])--The access type for the persistent class [class com.jpatest.model.Visit] is set to [FIELD].
[EL Config]: 2010-08-18 09:50:54.685--ServerSession(14306161)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.jpatest.model.Visit] is being defaulted to: Visit.
[EL Config]: 2010-08-18 09:50:54.701--ServerSession(14306161)--Thread(Thread[main,5,main])--The table name for entity [class com.jpatest.model.Visit] is being defaulted to: VISIT.
[EL Config]: 2010-08-18 09:50:54.716--ServerSession(14306161)--Thread(Thread[main,5,main])--The column name for element [field id] is being defaulted to: ID.
[EL Config]: 2010-08-18 09:50:54.716--ServerSession(14306161)--Thread(Thread[main,5,main])--The column name for element [field location] is being defaulted to: LOCATION.
[EL Config]: 2010-08-18 09:50:54.763--ServerSession(14306161)--Thread(Thread[main,5,main])--The primary key column name for the mapping element [field reasons] is being defaulted to: ID.
[EL Config]: 2010-08-18 09:50:54.763--ServerSession(14306161)--Thread(Thread[main,5,main])--The foreign key column name for the mapping element [field reasons] is being defaulted to: ID.
[EL Finest]: 2010-08-18 09:50:54.763--ServerSession(14306161)--Thread(Thread[main,5,main])--End predeploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 0
[EL Finer]: 2010-08-18 09:50:54.763--Thread(Thread[main,5,main])--JavaSECMPInitializer - transformer is null.
[EL Finest]: 2010-08-18 09:50:54.763--ServerSession(14306161)--Thread(Thread[main,5,main])--Begin predeploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 0
[EL Finest]: 2010-08-18 09:50:54.763--ServerSession(14306161)--Thread(Thread[main,5,main])--End predeploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 1
[EL Finest]: 2010-08-18 09:50:54.763--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false
[EL Finest]: 2010-08-18 09:50:54.779--ServerSession(14306161)--Thread(Thread[main,5,main])--Begin deploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 1
[EL Finer]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--Could not initialize Validation Factory. Encountered following exception: javax.validation.ValidationException: Unable to find a default provider
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.target-server; value=None; translated value=org.eclipse.persistence.platform.server.NoServerPlatform
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.logger; value=DefaultLogger; translated value=org.eclipse.persistence.logging.DefaultSessionLog
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.session; value=true
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.exceptions; value=true
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST
[EL Finest]: 2010-08-18 09:50:54.794--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.session; value=true
[EL Finest]: 2010-08-18 09:50:54.81--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.logging.exceptions; value=true
[EL Finest]: 2010-08-18 09:50:54.81--ServerSession(14306161)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.user; value=eclipsetest
[EL Finest]: 2010-08-18 09:50:54.81--ServerSession(14306161)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.password; value=xxxxxx
[EL Finest]: 2010-08-18 09:50:55.279--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false
[EL Finest]: 2010-08-18 09:50:55.294--ServerSession(14306161)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.driver; value=com.mysql.jdbc.Driver
[EL Finest]: 2010-08-18 09:50:55.294--ServerSession(14306161)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.url; value=jdbc:mysql://localhost/eclipsedb
[EL Finest]: 2010-08-18 09:50:55.294--ServerSession(14306161)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false
[EL Info]: 2010-08-18 09:50:55.294--ServerSession(14306161)--Thread(Thread[main,5,main])--EclipseLink, version: Eclipse Persistence Services - 2.0.3.v20100805-r7973
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.HSQLPlatform, RegularExpression: (?i)hsql.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.InformixPlatform, RegularExpression: (?i)informix.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.PointBasePlatform, RegularExpression: (?i)pointbase.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.DB2Platform, RegularExpression: (?i).*db2.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.SQLServerPlatform, RegularExpression: (?i)microsoft.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.PostgreSQLPlatform, RegularExpression: (?i)postgresql.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.H2Platform, RegularExpression: (?i)h2.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.SybasePlatform, RegularExpression: (?i)(sybase.*)|(adaptive server enterprise.*)|(SQL Server).
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.FirebirdPlatform, RegularExpression: (?i)firebird.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.JavaDBPlatform, RegularExpression: (?i).*derby.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.oracle.Oracle10Platform, RegularExpression: (?i)oracle.*.
[EL Finest]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--DBPlatform: org.eclipse.persistence.platform.database.MySQLPlatform, RegularExpression: (?i)mysql.*.
[EL Fine]: 2010-08-18 09:50:55.56--Thread(Thread[main,5,main])--Detected Vendor platform: org.eclipse.persistence.platform.database.MySQLPlatform
[EL Config]: 2010-08-18 09:50:55.575--ServerSession(14306161)--Connection(14615608)--Thread(Thread[main,5,main])--connecting(DatabaseLogin(
platform=>MySQLPlatform
user name=> "eclipsetest"
datasource URL=> "jdbc:mysql://localhost/eclipsedb"
))
[EL Config]: 2010-08-18 09:50:55.591--ServerSession(14306161)--Connection(1465214)--Thread(Thread[main,5,main])--Connected: jdbc:mysql://localhost/eclipsedb
User: eclipsetest@localhost
Database: MySQL Version: 5.1.47-community
Driver: MySQL-AB JDBC Driver Version: mysql-connector-java-5.1.5 ( Revision: ${svn.Revision} )
[EL Config]: 2010-08-18 09:50:55.591--ServerSession(14306161)--Connection(30462244)--Thread(Thread[main,5,main])--connecting(DatabaseLogin(
platform=>MySQLPlatform
user name=> "eclipsetest"
datasource URL=> "jdbc:mysql://localhost/eclipsedb"
))
[EL Config]: 2010-08-18 09:50:55.591--ServerSession(14306161)--Connection(20357537)--Thread(Thread[main,5,main])--Connected: jdbc:mysql://localhost/eclipsedb
User: eclipsetest@localhost
Database: MySQL Version: 5.1.47-community
Driver: MySQL-AB JDBC Driver Version: mysql-connector-java-5.1.5 ( Revision: ${svn.Revision} )
[EL Info]: 2010-08-18 09:50:55.685--ServerSession(14306161)--Thread(Thread[main,5,main])--group login successful
[EL Finest]: 2010-08-18 09:50:55.716--ServerSession(14306161)--Thread(Thread[main,5,main])--Execute query DataModifyQuery(sql="DROP TABLE VISITREASON")
[EL Fine]: 2010-08-18 09:50:55.716--ServerSession(14306161)--Connection(20357537)--Thread(Thread[main,5,main])--DROP TABLE VISITREASON
[EL Finest]: 2010-08-18 09:50:55.794--ServerSession(14306161)--Thread(Thread[main,5,main])--Execute query DataModifyQuery(sql="CREATE TABLE VISITREASON (ID BIGINT NOT NULL, REASON VARCHAR(255))")
[EL Fine]: 2010-08-18 09:50:55.794--ServerSession(14306161)--Connection(20357537)--Thread(Thread[main,5,main])--CREATE TABLE VISITREASON (ID BIGINT NOT NULL, REASON VARCHAR(255))
[EL Finest]: 2010-08-18 09:50:55.856--ServerSession(14306161)--Thread(Thread[main,5,main])--Execute query DataModifyQuery(sql="DROP TABLE VISIT")
[EL Fine]: 2010-08-18 09:50:55.856--ServerSession(14306161)--Connection(20357537)--Thread(Thread[main,5,main])--DROP TABLE VISIT
[EL Finest]: 2010-08-18 09:50:55.888--ServerSession(14306161)--Thread(Thread[main,5,main])--Execute query DataModifyQuery(sql="CREATE TABLE VISIT (ID BIGINT NOT NULL, LOCATION VARCHAR(255), PRIMARY KEY (ID))")
[EL Fine]: 2010-08-18 09:50:55.903--ServerSession(14306161)--Connection(20357537)--Thread(Thread[main,5,main])--CREATE TABLE VISIT (ID BIGINT NOT NULL, LOCATION VARCHAR(255), PRIMARY KEY (ID))
[EL Finer]: 2010-08-18 09:50:56.028--ServerSession(14306161)--Thread(Thread[main,5,main])--Canonical Metamodel class [com.jpatest.model.Visit_] not found during initialization.
[EL Finest]: 2010-08-18 09:50:56.028--ServerSession(14306161)--Thread(Thread[main,5,main])--End deploying Persistence Unit group-pu; session group; state Deployed; factoryCount 1
[EL Finer]: 2010-08-18 09:50:56.059--ServerSession(14306161)--Thread(Thread[main,5,main])--client acquired
[EL Finest]: 2010-08-18 09:50:56.059--UnitOfWork(18388366)--Thread(Thread[main,5,main])--PERSIST operation called on: com.jpatest.model.Visit@1958bf9.
[EL Finer]: 2010-08-18 09:50:56.059--UnitOfWork(18388366)--Thread(Thread[main,5,main])--begin unit of work commit
[EL Finer]: 2010-08-18 09:50:56.075--ClientSession(16267615)--Connection(20357537)--Thread(Thread[main,5,main])--begin transaction
[EL Finest]: 2010-08-18 09:50:56.075--UnitOfWork(18388366)--Thread(Thread[main,5,main])--Execute query InsertObjectQuery(com.jpatest.model.Visit@1958bf9)
[EL Fine]: 2010-08-18 09:50:56.075--ClientSession(16267615)--Connection(20357537)--Thread(Thread[main,5,main])--INSERT INTO VISIT (ID, LOCATION) VALUES (?, ?)
bind => [946718011822028915, null]
[EL Finest]: 2010-08-18 09:50:56.075--UnitOfWork(18388366)--Thread(Thread[main,5,main])--Execute query DataModifyQuery()
[EL Fine]: 2010-08-18 09:50:56.075--ClientSession(16267615)--Connection(20357537)--Thread(Thread[main,5,main])--INSERT INTO VISITREASON (ID, REASON) VALUES (?, ?)
bind => [946718011822028915, Test]
[EL Finer]: 2010-08-18 09:50:56.091--ClientSession(16267615)--Connection(20357537)--Thread(Thread[main,5,main])--commit transaction
[EL Finer]: 2010-08-18 09:50:56.137--UnitOfWork(18388366)--Thread(Thread[main,5,main])--end unit of work commit
[EL Finer]: 2010-08-18 09:50:56.137--UnitOfWork(18388366)--Thread(Thread[main,5,main])--resume unit of work
[EL Finer]: 2010-08-18 09:50:56.137--UnitOfWork(18388366)--Thread(Thread[main,5,main])--release unit of work
[EL Finer]: 2010-08-18 09:50:56.137--ClientSession(16267615)--Thread(Thread[main,5,main])--client released
[EL Finer]: 2010-08-18 09:50:56.137--ServerSession(14306161)--Thread(Thread[main,5,main])--client acquired
[EL Finest]: 2010-08-18 09:50:56.137--UnitOfWork(31148109)--Thread(Thread[main,5,main])--Merge clone with references com.jpatest.model.Visit@1958bf9
[EL Finer]: 2010-08-18 09:50:56.153--ClientSession(18360202)--Connection(20357537)--Thread(Thread[main,5,main])--begin transaction
[EL Finest]: 2010-08-18 09:50:56.153--UnitOfWork(31148109)--Thread(Thread[main,5,main])--Execute query UpdateObjectQuery(com.jpatest.model.Visit@167d7fb)
[EL Fine]: 2010-08-18 09:50:56.153--ClientSession(18360202)--Connection(20357537)--Thread(Thread[main,5,main])--UPDATE VISIT SET LOCATION = ? WHERE (ID = ?)
bind => [test location, 946718011822028915]
[EL Finer]: 2010-08-18 09:50:56.153--UnitOfWork(31148109)--Thread(Thread[main,5,main])--begin unit of work commit
[EL Finer]: 2010-08-18 09:50:56.153--ClientSession(18360202)--Connection(20357537)--Thread(Thread[main,5,main])--commit transaction
[EL Finer]: 2010-08-18 09:50:56.2--UnitOfWork(31148109)--Thread(Thread[main,5,main])--end unit of work commit
[EL Finer]: 2010-08-18 09:50:56.2--UnitOfWork(31148109)--Thread(Thread[main,5,main])--resume unit of work
[EL Finer]: 2010-08-18 09:50:56.2--UnitOfWork(31148109)--Thread(Thread[main,5,main])--release unit of work
[EL Finer]: 2010-08-18 09:50:56.2--ClientSession(18360202)--Thread(Thread[main,5,main])--client released
Here is my output that failed: [EL Finest]: 2010-08-18 07:44:51.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.session; value=true [EL Finest]: 2010-08-18 07:44:51.19--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.exceptions; value=true [EL Finest]: 2010-08-18 07:44:51.19--ServerSession(14293164)--Thread(Thread[main,5,main])--Begin predeploying Persistence Unit group-pu; session group; state Initial; factoryCount 0 [EL Info]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.user is deprecated, property javax.persistence.jdbc.user should be used instead. [EL Info]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.driver is deprecated, property javax.persistence.jdbc.driver should be used instead. [EL Info]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.url is deprecated, property javax.persistence.jdbc.url should be used instead. [EL Info]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.password is deprecated, property javax.persistence.jdbc.password should be used instead. [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.orm.throw.exceptions; default value=true [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.weaving.changetracking; default value=true [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.weaving.lazy; default value=true [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.weaving.eager; default value=false [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.weaving.fetchgroups; default value=true [EL Finest]: 2010-08-18 07:44:51.205--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.weaving.internal; default value=true [EL Finer]: 2010-08-18 07:44:51.237--ServerSession(14293164)--Thread(Thread[main,5,main])--Searching for default mapping file in file:/C:/eclipse/workspaces/testcases/basic_coll_dups/bin/ [EL Finer]: 2010-08-18 07:44:51.252--ServerSession(14293164)--Thread(Thread[main,5,main])--Searching for default mapping file in file:/C:/eclipse/workspaces/testcases/basic_coll_dups/bin/ [EL Config]: 2010-08-18 07:44:51.502--ServerSession(14293164)--Thread(Thread[main,5,main])--The access type for the persistent class [class com.jpatest.model.Visit] is set to [FIELD]. [EL Config]: 2010-08-18 07:44:51.596--ServerSession(14293164)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.jpatest.model.Visit] is being defaulted to: Visit. [EL Config]: 2010-08-18 07:44:51.596--ServerSession(14293164)--Thread(Thread[main,5,main])--The table name for entity [class com.jpatest.model.Visit] is being defaulted to: VISIT. [EL Config]: 2010-08-18 07:44:51.643--ServerSession(14293164)--Thread(Thread[main,5,main])--The column name for element [field id] is being defaulted to: ID. [EL Config]: 2010-08-18 07:44:51.659--ServerSession(14293164)--Thread(Thread[main,5,main])--The column name for element [field location] is being defaulted to: LOCATION. [EL Config]: 2010-08-18 07:44:51.752--ServerSession(14293164)--Thread(Thread[main,5,main])--The primary key column name for the mapping element [field reasons] is being defaulted to: ID. [EL Config]: 2010-08-18 07:44:51.752--ServerSession(14293164)--Thread(Thread[main,5,main])--The foreign key column name for the mapping element [field reasons] is being defaulted to: ID. [EL Finer]: 2010-08-18 07:44:51.768--ServerSession(14293164)--Thread(Thread[main,5,main])--Class [com.jpatest.model.Visit] registered to be processed by weaver. [EL Finest]: 2010-08-18 07:44:51.784--ServerSession(14293164)--Thread(Thread[main,5,main])--End predeploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 0 [EL Finer]: 2010-08-18 07:44:51.784--Thread(Thread[main,5,main])--JavaSECMPInitializer - registering transformer for group-pu. [EL Finest]: 2010-08-18 07:44:51.955--ServerSession(14293164)--Thread(Thread[main,5,main])--Begin predeploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 0 [EL Finest]: 2010-08-18 07:44:51.955--ServerSession(14293164)--Thread(Thread[main,5,main])--End predeploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 1 [EL Finest]: 2010-08-18 07:44:51.955--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false [EL Finest]: 2010-08-18 07:44:51.971--ServerSession(14293164)--Thread(Thread[main,5,main])--Begin weaver class transformer processing class [com/jpatest/model/Visit]. [EL Finest]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--Weaved persistence (PersistenceEntity) [com/jpatest/model/Visit]. [EL Finest]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--Weaved change tracking (ChangeTracker) [com/jpatest/model/Visit]. [EL Finest]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--Weaved fetch groups (FetchGroupTracker) [com/jpatest/model/Visit]. [EL Finest]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--End weaver class transformer processing class [com/jpatest/model/Visit]. [EL Finest]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--Begin deploying Persistence Unit group-pu; session group; state Predeployed; factoryCount 1 [EL Info]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.user is deprecated, property javax.persistence.jdbc.user should be used instead. [EL Info]: 2010-08-18 07:44:52.065--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.driver is deprecated, property javax.persistence.jdbc.driver should be used instead. [EL Info]: 2010-08-18 07:44:52.08--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.url is deprecated, property javax.persistence.jdbc.url should be used instead. [EL Info]: 2010-08-18 07:44:52.08--ServerSession(14293164)--Thread(Thread[main,5,main])--property eclipselink.jdbc.password is deprecated, property javax.persistence.jdbc.password should be used instead. [EL Finer]: 2010-08-18 07:44:52.112--ServerSession(14293164)--Thread(Thread[main,5,main])--Could not initialize Validation Factory. Encountered following exception: java.lang.NoClassDefFoundError: javax/validation/Validation [EL Finest]: 2010-08-18 07:44:52.127--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.target-server; value=None; translated value=org.eclipse.persistence.platform.server.NoServerPlatform [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.logger; value=DefaultLogger; translated value=org.eclipse.persistence.logging.DefaultSessionLog [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.session; value=true [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.exceptions; value=true [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.level; value=FINEST; translated value=FINEST [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.session; value=true [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.logging.exceptions; value=true [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.user; value=destest [EL Finest]: 2010-08-18 07:44:52.143--ServerSession(14293164)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.password; value=xxxxxx [EL Finest]: 2010-08-18 07:44:53.096--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.target-database; value=Oracle; translated value=org.eclipse.persistence.platform.database.OraclePlatform [EL Finest]: 2010-08-18 07:44:53.112--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false [EL Finest]: 2010-08-18 07:44:53.112--ServerSession(14293164)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.driver; value=oracle.jdbc.OracleDriver [EL Finest]: 2010-08-18 07:44:53.112--ServerSession(14293164)--Thread(Thread[main,5,main])--property=javax.persistence.jdbc.url; value=jdbc:oracle:thin:@dlocalhost:1521:dev03 [EL Finest]: 2010-08-18 07:44:53.112--ServerSession(14293164)--Thread(Thread[main,5,main])--property=eclipselink.validation-only; value=false [EL Info]: 2010-08-18 07:44:53.112--ServerSession(14293164)--Thread(Thread[main,5,main])--EclipseLink, version: Eclipse Persistence Services - 2.0.3.v20100805-r7973 [EL Config]: 2010-08-18 07:44:53.143--ServerSession(14293164)--Connection(26545674)--Thread(Thread[main,5,main])--connecting(DatabaseLogin( platform=>OraclePlatform user name=> "destest" datasource URL=> "jdbc:oracle:thin:@localhost:1521:dev03" )) [EL Config]: 2010-08-18 07:44:53.471--ServerSession(14293164)--Connection(5018853)--Thread(Thread[main,5,main])--Connected: jdbc:oracle:thin:@localhost:1521:dev03 User: DESTEST Database: Oracle Version: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options Driver: Oracle JDBC driver Version: 10.2.0.4.0 [EL Config]: 2010-08-18 07:44:53.471--ServerSession(14293164)--Connection(29578470)--Thread(Thread[main,5,main])--connecting(DatabaseLogin( platform=>OraclePlatform user name=> "destest" datasource URL=> "jdbc:oracle:thin:@localhost:1521:dev03" )) [EL Config]: 2010-08-18 07:44:53.534--ServerSession(14293164)--Connection(3119471)--Thread(Thread[main,5,main])--Connected: jdbc:oracle:thin:@localhost:1521:dev03 User: DESTEST Database: Oracle Version: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options Driver: Oracle JDBC driver Version: 10.2.0.4.0 [EL Info]: 2010-08-18 07:44:53.69--ServerSession(14293164)--Thread(Thread[main,5,main])--group login successful [EL Finer]: 2010-08-18 07:44:53.737--ServerSession(14293164)--Thread(Thread[main,5,main])--Canonical Metamodel class [com.jpatest.model.Visit_] not found during initialization. [EL Finest]: 2010-08-18 07:44:53.737--ServerSession(14293164)--Thread(Thread[main,5,main])--End deploying Persistence Unit group-pu; session group; state Deployed; factoryCount 1 [EL Finer]: 2010-08-18 07:44:53.815--ServerSession(14293164)--Thread(Thread[main,5,main])--client acquired [EL Finest]: 2010-08-18 07:44:53.83--UnitOfWork(27521400)--Thread(Thread[main,5,main])--PERSIST operation called on: com.jpatest.model.Visit@14a616. [EL Finer]: 2010-08-18 07:44:53.83--UnitOfWork(27521400)--Thread(Thread[main,5,main])--begin unit of work commit [EL Finer]: 2010-08-18 07:44:53.83--ClientSession(19892868)--Connection(3119471)--Thread(Thread[main,5,main])--begin transaction [EL Finest]: 2010-08-18 07:44:53.846--UnitOfWork(27521400)--Thread(Thread[main,5,main])--Execute query InsertObjectQuery(com.jpatest.model.Visit@14a616) [EL Fine]: 2010-08-18 07:44:53.846--ClientSession(19892868)--Connection(3119471)--Thread(Thread[main,5,main])--INSERT INTO VISIT (ID, LOCATION) VALUES (?, ?) bind => [4065537785412814140, null] [EL Finest]: 2010-08-18 07:44:54.08--UnitOfWork(27521400)--Thread(Thread[main,5,main])--Execute query DataModifyQuery() [EL Fine]: 2010-08-18 07:44:54.08--ClientSession(19892868)--Connection(3119471)--Thread(Thread[main,5,main])--INSERT INTO VISITREASON (ID, REASON) VALUES (?, ?) bind => [4065537785412814140, Test] [EL Finer]: 2010-08-18 07:44:54.096--ClientSession(19892868)--Connection(3119471)--Thread(Thread[main,5,main])--commit transaction [EL Finer]: 2010-08-18 07:44:54.096--UnitOfWork(27521400)--Thread(Thread[main,5,main])--end unit of work commit [EL Finer]: 2010-08-18 07:44:54.096--UnitOfWork(27521400)--Thread(Thread[main,5,main])--resume unit of work [EL Finer]: 2010-08-18 07:44:54.112--UnitOfWork(27521400)--Thread(Thread[main,5,main])--release unit of work [EL Finer]: 2010-08-18 07:44:54.112--ClientSession(19892868)--Thread(Thread[main,5,main])--client released [EL Finer]: 2010-08-18 07:44:54.112--ServerSession(14293164)--Thread(Thread[main,5,main])--client acquired [EL Finest]: 2010-08-18 07:44:54.112--UnitOfWork(32586504)--Thread(Thread[main,5,main])--Merge clone with references com.jpatest.model.Visit@14a616 [EL Finer]: 2010-08-18 07:44:54.112--ClientSession(7651652)--Connection(3119471)--Thread(Thread[main,5,main])--begin transaction [EL Finest]: 2010-08-18 07:44:54.112--UnitOfWork(32586504)--Thread(Thread[main,5,main])--Execute query UpdateObjectQuery(com.jpatest.model.Visit@5a936b) [EL Fine]: 2010-08-18 07:44:54.127--ClientSession(7651652)--Connection(3119471)--Thread(Thread[main,5,main])--UPDATE VISIT SET LOCATION = ? WHERE (ID = ?) bind => [test location, 4065537785412814140] [EL Finest]: 2010-08-18 07:44:54.127--UnitOfWork(32586504)--Thread(Thread[main,5,main])--Execute query DataModifyQuery(sql="INSERT INTO VISITREASON (ID, REASON) VALUES (?, ?)") [EL Fine]: 2010-08-18 07:44:54.127--ClientSession(7651652)--Connection(3119471)--Thread(Thread[main,5,main])--INSERT INTO VISITREASON (ID, REASON) VALUES (?, ?) bind => [4065537785412814140, Test] [EL Fine]: 2010-08-18 07:44:54.143--ClientSession(7651652)--Thread(Thread[main,5,main])--SELECT 1 FROM DUAL [EL Warning]: 2010-08-18 07:44:54.174--UnitOfWork(32586504)--Thread(Thread[main,5,main])--Local Exception Stack: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.0.3.v20100805-r7973): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: ORA-00001: unique constraint (DESTEST.VISITREASON_PK) violated Error Code: 1 Call: INSERT INTO VISITREASON (ID, REASON) VALUES (?, ?) bind => [4065537785412814140, Test] Query: DataModifyQuery(sql="INSERT INTO VISITREASON (ID, REASON) VALUES (?, ?)") at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:324) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:801) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeNoSelect(DatabaseAccessor.java:867) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicExecuteCall(DatabaseAccessor.java:587) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeCall(DatabaseAccessor.java:530) at org.eclipse.persistence.internal.sessions.AbstractSession.executeCall(AbstractSession.java:914) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:206) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:192) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeNoSelectCall(DatasourceCallQueryMechanism.java:235) at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeNoSelect(DatasourceCallQueryMechanism.java:215) at org.eclipse.persistence.internal.queries.StatementQueryMechanism.executeNoSelect(StatementQueryMechanism.java:115) at org.eclipse.persistence.queries.DataModifyQuery.executeDatabaseQuery(DataModifyQuery.java:85) at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:675) at org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:589) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2898) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1225) at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1207) at org.eclipse.persistence.mappings.DirectCollectionMapping.performDataModificationEvent(DirectCollectionMapping.java:1964) at org.eclipse.persistence.internal.sessions.CommitManager.commitAllObjectsWithChangeSet(CommitManager.java:130) at org.eclipse.persistence.internal.sessions.AbstractSession.writeAllObjectsWithChangeSet(AbstractSession.java:3260) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabase(UnitOfWorkImpl.java:1413) at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.commitToDatabase(RepeatableWriteUnitOfWork.java:547) at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitToDatabaseWithPreBuiltChangeSet(UnitOfWorkImpl.java:1559) at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.writeChanges(RepeatableWriteUnitOfWork.java:360) at org.eclipse.persistence.internal.jpa.EntityManagerImpl.flush(EntityManagerImpl.java:696) at com.jpatest.tester.Tester.testVisit(Tester.java:34) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59) at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98) at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79) at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87) at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77) at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42) at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88) at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51) at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44) at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27) at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37) at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) Caused by: java.sql.SQLException: ORA-00001: unique constraint (DESTEST.VISITREASON_PK) violated at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:219) at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:970) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1190) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3370) at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3454) at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.executeDirectNoSelect(DatabaseAccessor.java:792) ... 46 more We both seem to be running the same version with different results. Do you have any ideas about what could be different? The only thing I can think of is the VM. Specifically, what VM are you running? I am running on Windows XP with the JVM version java version "1.6.0_16" Java(TM) SE Runtime Environment (build 1.6.0_16-b01) Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode) I can now recreate the issue in the 2.0.x stream. Our 2.1 stream continues to work as expected. It looks as though this issue was fixed as a side effect of other changes in our 2.1 stream, it is difficult to isolate it from the other changes, so unless it is urgent we would prefer not to backport. We can stay with the workaround of annotating the class that contains the BasicCollection mapping with ChangeTracking(DEFERRED) until we uptake 2.1.x. The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink |