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 <stari...@gmail.com> 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";