Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 300724

Summary: MatchService.resolveAll - Problem when comparing fragment resources with non-fragment ones.
Product: [Modeling] EMFCompare Reporter: Alexander Nyßen <nyssen>
Component: CoreAssignee: EMF Compare <emf.compare-inbox>
Status: CLOSED DUPLICATE QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: Macintosh   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:
Attachments:
Description Flags
Patch to fix MatchService, so it can deal with cyclic references. none

Description Alexander Nyßen CLA 2010-01-25 15:06:18 EST
Build Identifier: M20090917-0800

A call to doResourceSetMatch as a result of comparing two resources may run into problems when one of the resources contains an object, which is referenced as child by another resource in the resource set (cyclic reference), as it is then marked as a FRAGMENT resource and deleted from the set of resources to be compared. 

Reproducible: Always
Comment 1 Alexander Nyßen CLA 2010-01-25 15:08:07 EST
Created attachment 157160 [details]
Patch to fix MatchService, so it can deal with cyclic references.
Comment 2 Alexander Nyßen CLA 2010-01-25 17:35:47 EST
Comment on attachment 157160 [details]
Patch to fix MatchService, so it can deal with cyclic references.

Marking patch obsolete, as it only addresses part of the problem. Have to investigate this further.
Comment 3 Alexander Nyßen CLA 2010-01-26 03:15:41 EST
Actually the problem I faced is that i copied a fragment resource and compared it with the copy (which I changed sligthly). It then occurs that the copy is no fragment resource any more, while the original still is. This in turn leads to the problem that the original resource is removed from the left resource set (as it is indeed a fragment), while the copy one is member of the right resource set.
Comment 4 Alexander Nyßen CLA 2010-01-28 06:31:30 EST
The "real" problem has been addressed within bug #301112, so I am marking this one as a duplicate.

*** This bug has been marked as a duplicate of bug 301112 ***