Jump to content

CmItemLoadedTwiceOnTreeException: An exception when trying to merge a branch with several wxlinks


marioo

Recommended Posts

I'm experiencing an error when attempting to check my changes in after a merge. It is quite difficult for me to describe the scenario, but let me try to give you at least some general information.

 

In PlasticSCM client the following error message is displayed (see the attached picture). On the other hand, the server logs the following error at the same time:

 

 

2014-07-03 09:13:31,589 7ac70576-4c8b-48b6-8bc1-5c0fe344712e NT AUTHORITY\SYSTEM at MARIUSZVM-WIN7 ERROR Operations - Plastic server version: 5.0.44.577

 
2014-07-03 09:13:31,589 7ac70576-4c8b-48b6-8bc1-5c0fe344712e NT AUTHORITY\SYSTEM at MARIUSZVM-WIN7 ERROR Operations - OnError catching exception The item 109 is loaded twice at '/CAPIFax' and '/Fax'. Please, remove one of them.
 
2014-07-03 09:13:31,589  NT AUTHORITY\SYSTEM at  ERROR Codice.CM.Server.ExceptionTracerSink - Dumping in-transit exception:The item 109 is loaded twice at '/CAPIFax' and '/Fax'. Please, remove one of them.

 

I experienced this error several times on different repositories. In all cases I was performing a checkin after merging a branch of a repository to its main branch. The checkin included both the current repository, and several other ones that were xlinked to it. When I was performing the checkin, it was interrupted several times by additional merge operations (a merge window appeared after I attempted to check my changes in). The consecutive merge windows referred to xlinked repositories and they usually informed about some move operations (a folder rename, eg. CAPIFax --> Fax as the log says). I always resolved the conflicts by preserving the destination branch changes (keeping the new name). After finishing all extra merges and attempting to check completely merged changes in, the above mentioned error would always appear.

 

Details:

  1. The repository I was performing the checkin on (after a merge) had several writable xlinks to other repositories.
  2. I made some changes in those xlinked repositories in the branch I was merging from (e.g. added some files),
  3. Other people made changes in the same repositories I had xlinked (e.g. they renamed some folders in them).

Sorry for a chaotic description, but it is quite difficult for me to explain all details of the scenario. Do you need some more information?

post-7729-0-25372400-1404379859_thumb.png

Link to comment
Share on other sites

Here's the scenario. I managed to find out how to generate the error.

 

There are two repositories: SharedRepo, MyProject.

 

SharedRepo content:

  • Folder1
    • File1.txt

 

Steps to perform in:

  1. Create a branch in MyProject and switch to it,
  2. Create a wxlink to the latest changeset of SharedRepo within the branch. Check it in.
  3. Create a workspace for SharedRepo. Then go to it and rename Folder1 to Folder2. Check the change in to the /main branch.
  4. Now try to merge the previously created branch in the MyProject repository with the /main branch. When you try to check the merged changes in to /main, another merge window will appear. Process the merge in that window, and attempt checking the changes in once again. Now the error message should appear. 

 

The second point is of importance. The wxlink to the SharedRepo is created in the child branch. It does not exist in the repository yet.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...