This is an automated email from the ASF dual-hosted git repository.
ntimofeev pushed a commit to branch STABLE-4.2
in repository https://gitbox.apache.org/repos/asf/cayenne.git
The following commit(s) were added to refs/heads/STABLE-4.2 by this push:
new 1bd04506d Revert fix for CAY-2851
1bd04506d is described below
commit 1bd04506d7d82b86b2571af156acc152271102b6
Author: Nikita Timofeev <[email protected]>
AuthorDate: Tue Jun 11 13:44:33 2024 +0400
Revert fix for CAY-2851
---
RELEASE-NOTES.txt | 1 -
.../test/java/org/apache/cayenne/commitlog/CommitLogFilterIT.java | 6 +++++-
cayenne-server/src/main/java/org/apache/cayenne/BaseDataObject.java | 4 ----
cayenne-server/src/test/java/org/apache/cayenne/CDOOne2ManyIT.java | 2 ++
.../src/test/java/org/apache/cayenne/CDOOneDep2OneIT.java | 2 ++
5 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index eacdde46c..579fa85b1 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -29,7 +29,6 @@ CAY-2841 Multi column ColumnSelect with SHARED_CACHE fails
after 1st select
CAY-2844 Joint prefetch doesn't use ObjEntity qualifier
CAY-2848 Vertical Inheritance: Updating one-to-many with inverse nullifies
other columns
CAY-2850 Query using Clob comparison with empty String fails
-CAY-2851 Replace Existing OneToOne From New Object
CAY-2853 Incorrect deletion of entities from flattened attributes
----------------------------------
diff --git
a/cayenne-commitlog/src/test/java/org/apache/cayenne/commitlog/CommitLogFilterIT.java
b/cayenne-commitlog/src/test/java/org/apache/cayenne/commitlog/CommitLogFilterIT.java
index e75f07a6e..8c2de9f1c 100644
---
a/cayenne-commitlog/src/test/java/org/apache/cayenne/commitlog/CommitLogFilterIT.java
+++
b/cayenne-commitlog/src/test/java/org/apache/cayenne/commitlog/CommitLogFilterIT.java
@@ -243,8 +243,11 @@ public class CommitLogFilterIT extends AuditableServerCase
{
verify(mockListener).onPostCommit(any(ObjectContext.class),
changeMap.capture());
assertNotNull(changeMap.getValue());
- assertEquals(5, changeMap.getValue().getUniqueChanges().size());
+ // TODO: this assertions would fail, once CAY-2851 is fixed
+ assertEquals(4, changeMap.getValue().getUniqueChanges().size());
+ // TODO: commented out until CAY-2851 is fixed
+ /*
ObjectChange a1c = changeMap.getValue().getChanges().get(
ObjectId.of("Auditable1", Auditable1.ID_PK_COLUMN, 1));
assertNotNull(a1c);
@@ -260,6 +263,7 @@ public class CommitLogFilterIT extends AuditableServerCase {
ToManyRelationshipChange a2c1 =
a2c.getToManyRelationshipChanges().get(Auditable1.CHILDREN1.getName());
assertEquals(0, a2c1.getAdded().size());
assertEquals(1, a2c1.getRemoved().size());
+ */
ObjectChange ac1c = changeMap.getValue().getChanges().get(
ObjectId.of("AuditableChild1", AuditableChild1.ID_PK_COLUMN,
1));
diff --git
a/cayenne-server/src/main/java/org/apache/cayenne/BaseDataObject.java
b/cayenne-server/src/main/java/org/apache/cayenne/BaseDataObject.java
index 483e23aef..3b8eec657 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/BaseDataObject.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/BaseDataObject.java
@@ -428,10 +428,6 @@ public abstract class BaseDataObject extends
PersistentObject implements DataObj
.getRelationship(relName);
ObjRelationship revRel = rel.getReverseRelationship();
if (revRel != null) {
- Object oldTarget = val.readProperty(revRel.getName());
- if (oldTarget != val && oldTarget instanceof DataObject && val
instanceof BaseDataObject) {
-
((BaseDataObject)val).unsetReverseRelationship(revRel.getName(), (DataObject)
oldTarget);
- }
if (revRel.isToMany()) {
val.addToManyTarget(revRel.getName(), this, false);
} else {
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/CDOOne2ManyIT.java
b/cayenne-server/src/test/java/org/apache/cayenne/CDOOne2ManyIT.java
index c10238688..34dbb4b1d 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/CDOOne2ManyIT.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/CDOOne2ManyIT.java
@@ -35,6 +35,7 @@ import org.apache.cayenne.unit.di.server.CayenneProjects;
import org.apache.cayenne.unit.di.server.ServerCase;
import org.apache.cayenne.unit.di.server.UseServerRuntime;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import java.util.Date;
@@ -295,6 +296,7 @@ public class CDOOne2ManyIT extends ServerCase {
context.commitChanges();
}
+ @Ignore("See CAY-2851 for details")
@Test
public void testReplace() {
diff --git
a/cayenne-server/src/test/java/org/apache/cayenne/CDOOneDep2OneIT.java
b/cayenne-server/src/test/java/org/apache/cayenne/CDOOneDep2OneIT.java
index b288b4d35..c91fca5cf 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/CDOOneDep2OneIT.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/CDOOneDep2OneIT.java
@@ -29,6 +29,7 @@ import org.apache.cayenne.testdo.testmap.Painting;
import org.apache.cayenne.testdo.testmap.PaintingInfo;
import org.apache.cayenne.unit.di.server.CayenneProjects;
import org.apache.cayenne.unit.di.server.UseServerRuntime;
+import org.junit.Ignore;
import org.junit.Test;
import java.sql.Timestamp;
@@ -145,6 +146,7 @@ public class CDOOneDep2OneIT extends CayenneDOTestBase {
}
+ @Ignore("See CAY-2851 for details")
@Test
public void testReplaceOtherSide() throws Exception {
String altPaintingName = "alt painting";