Community
Participate
Working Groups
Take a simple example with Folder - 1-Many -> File When cache coordination type is set to SEND_NEW_OBJECTS_WITH_CHANGES, the follow scenario will fail to update the remote caches with the File property 1. Create an folder with a file on server 1 2. read it in both servers (to put it in the cache) 3. delete both the folder and the file on server 1 4. create a new folder with a file on server 1 5. read it on server 2 In this case, the server 2 version of the Folder does not contain any files The reason for this issue is that our merge code makes use of the addObjectList which is not serialized. As a result, when we try to merge into the cache, the addObject list contains no elements and the Folder is created with no files. We should use the orderedAddObjectIndices list instead -> like the remove code uses.
Created attachment 203707 [details] proposed fix
Final change was to allow the orderedAddObjectList to be serialized. There is very little cost to this because other variables containing the same change sets are already serialized.
Fix checked into trunk, 2.1, 2.2 and 2.3 to follow Review Chris Delahunt - pending Added test to RCM Distributed Model Tested with JPA and Core LRG
Fix checked into 2.3.x, 2.2.x and 2.1.x
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink