It's all about the answers!

Ask a question

Unable to reload the folders that are out of sync

Sergei Bobyr (133) | asked Sep 25 '20, 2:17 a.m.

I'm trying to use the same workspace on two computers. When sandboxes get out of sync the RTC shows "Some of your folders are out of sync. We recommend you reload the folders". Clicking on 'reload folders' bring up a dialog box with two entries 1. "workspace_name", 2. "component_name". Any combination of checkboxes results in the same error message once I click 'finish'. The error message is: "Failed to load due to 2 invalid requests": 1. Failed to load into C:/Sandboxes/component_name, 2. Failed to load into C:/Sandboxes/workspace_name.

Now, the real structure of the sandbox is like this: C:/Sandboxes/workspace_name/component_name. Whenever we load that one component we always select "load components as root folders" and on the next screen "load content into sandbox sub-folder" which by default select the workspace.

Please help me actually use the same workspace on more than one computer. Nobody in our group can figure out how to do it. Thanks!

Accepted answer

permanent link
Ralph Schoon (62.7k33643) | answered Sep 25 '20, 2:41 a.m.
edited Sep 25 '20, 2:53 a.m.
You must not use the same repository workspace on two computers. You must not load the same repository workspace multiple time in parallel. The tool even tells you if you do in current versions. If you have a repository workspace loaded twice and you change the local files in one load location, it becomes out of sync with the other loaded instance.

What you see is the designed behavior. Use a stream and flow two workspaces against that stream. You can maintain consistency by accept/deliver. That is how the Jazz SCM is designed.

Geoffrey Clemm selected this answer as the correct answer

Sergei Bobyr commented Sep 25 '20, 4:19 a.m. | edited Sep 25 '20, 4:21 a.m.

According to the linked article this is a perfectly normal and expected situation, quoting "A less common case is when you have the same repository workspace loaded in multiple sandboxes and you perform actions that modify the configuration of the repository workspace via one of the sandboxes (the other sandboxes will become out of sync)." RTC just doesn't handle it correctly in my case. 

Ralph Schoon commented Sep 25 '20, 4:38 a.m.
There are other reasons why this can happen, but that is unrelated to your case. You are using the tool wrong and suffer the consequences.

You must not load the same repository workspace multiple times in parallel and then modify the loaded data. Period. Current versions of the tool even issue a warning when doing this in the Eclipse client. So do not complain if you do.

You can load multiple times, if you do not modify the loaded data. If you do modify the local data, live with the error. Or unload all instances deleting the local data and load again.

Another question is, why anyone would even want to do this.

Geoffrey Clemm commented Sep 25 '20, 12:15 p.m.

There are many reasons why Ralph's answer is the only correct answer.   Note that it is reasonable to ask "I have this problem when I'm using multiple workspaces ... can you provide guidance".    

Sergei Bobyr commented Sep 25 '20, 7:12 p.m.

Thank you for the guidance. In terms of how this happens: we use Visual Studio RTC plugin. I use 2 computers for development. Once I'm in VS and look at my repository workspaces I see all my workspaces and their local load status. There's no way to know that a workspace was loaded on another computer. When I load locally it shows no error or warning that a workspace is already loaded somewhere else. We use RTC v. 6.0.3. I will try to suffix workspace names with its target computer to help me out not to load a workspace on multiple machines.

Ralph Schoon commented Sep 26 '20, 8:26 a.m. | edited Sep 26 '20, 8:27 a.m.
I noticed the new warning in If you loaded a repository workpace to a location, next time you try to load it somewhere else, a warning pops up. I am not excited about it, but I guess it can prevent issues for other users. The warning is based on information on the server, not the client.

A naming convention is a good idea. Consider having separate repository workspaces for both locations that flow with a common stream. That way you can integrate changes regardless on which machine you did them. The flow is the natural integration flow.

You can also use your own stream, if you want to isolate your changes from others. This increases the chance of conflicts in later integration steps however.

Hope whatever model you adopt is now working for you.

Your answer

Register or to post your answer.