It's all about the answers!

Ask a question

Component always Out of sync!!


qiu saphen (27126039) | asked Jun 22 '11, 9:25 a.m.
Hi,
Our team works with RTC for serveral months, we always meet component out of sync issue.

The situation is like that: we have many streams including many components, we create one workspace for each stream, and specially we work with two or more computers, each computer installs RTC also. Then the question comes, we deliver some changes from a computer, and then we use another computer, we can find that it shows the same component is out of sync , in order to fix the issue we have to replace with the latest from the stream, that means it will download the entire component to local...

I know we have a workround way to aviod the issue: create different workspace on different computer for the same stream.But we have many streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best way is one workspace can run on every host! The good way is keep out of sync status and load only the changes, not the entire component, that is reasonable!

Thoughts?

9 answers



permanent link
Ralph Schoon (63.1k33646) | answered Jun 22 '11, 12:07 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Hi,
Our team works with RTC for serveral months, we always meet component out of sync issue.

The situation is like that: we have many streams including many components, we create one workspace for each stream, and specially we work with two or more computers, each computer installs RTC also. Then the question comes, we deliver some changes from a computer, and then we use another computer, we can find that it shows the same component is out of sync , in order to fix the issue we have to replace with the latest from the stream, that means it will download the entire component to local...

I know we have a workround way to aviod the issue: create different workspace on different computer for the same stream.But we have many streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best way is one workspace can run on every host! The good way is keep out of sync status and load only the changes, not the entire component, that is reasonable!

Thoughts?


Hi,

Basically Each user is supposed to have his own repository workspace. The stream is the thing for sharing. The Repository workspace you are not supposed to work against in parallel. Each Repository workspace flowing against a stream gets information about potential incoming and outgoing changes and can deliver/accept if convenient.

A workspace has minimal footprint. Don't hesitate to create them.

This IS the method to avoid the issues you are having.

permanent link
Geoffrey Clemm (30.1k33035) | answered Jun 22 '11, 8:02 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
+1 for Ralph's response.

Just for interest's sake, what made you think that it was a good idea
(or necessary) to share a workspace between multiple people or multiple
machines? If it was from the RTC documentation, we will get that fixed.

Cheers,
Geoff

On 6/22/2011 12:08 PM, rschoon wrote:
saphenwrote:
Hi,
Our team works with RTC for serveral months, we always meet
component out of sync issue.

The situation is like that: we have many streams including many
components, we create one workspace for each stream, and specially we
work with two or more computers, each computer installs RTC also. Then
the question comes, we deliver some changes from a computer, and then
we use another computer, we can find that it shows the same component
is out of sync , in order to fix the issue we have to replace with
the latest from the stream, that means it will download the entire
component to local...

I know we have a workround way to aviod the issue: create different
workspace on different computer for the same stream.But we have many
streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best
way is one workspace can run on every host! The good way is keep out
of sync status and load only the changes, not the entire component,
that is reasonable!

Thoughts?

Hi,

Basically Each user is supposed to have his own repository workspace.
The stream is the thing for sharing. The Repository workspace you are
not supposed to work against in parallel. Each Repository workspace
flowing against a stream gets information about potential incoming
and outgoing changes and can deliver/accept if convenient.

permanent link
Bill Taylor (3144) | answered Jun 23 '11, 4:57 a.m.
Using RTC 3.0 iFix1, I opened a Word document from my sandbox using "Open With" to launch Word in a separate window.

After I saved my changes, I was surprised that the file did not appear in the "Pending Changes" view.

It works fine if I open the document in an Eclipse view, but I lose access to some of the Word functionality.

Is there a way to fix this behaviour, other than using Refresh?

permanent link
qiu saphen (27126039) | answered Jun 23 '11, 10:28 a.m.
That is not come from document, maybe it's our habit...
Every person in our team has a laptop and a desktop, we always change to use, and also we maybe use the desktop via VPN at home, so we install RTC onto the two machines.
From a RTC newer habit, we just create a new workspace for a stream on a machine at the beginning, when we use another machine to connect to JAZZ server with RTC we can get the workspace we just created. So we will load the the same workspace on each machine, so that the issue may come out.
I think it is the habit of each RTC newer which use more than one machine at the same time. And they will meet the issue as I did.

Yep, creating a workspace is a minimal footprint, but if we have many streams/components, the workspaces' number will be double because we have two machines... I think less workspace will lead to be found out easily and fetched quickly from remote jazz server.

+1 for Ralph's response.

Just for interest's sake, what made you think that it was a good idea
(or necessary) to share a workspace between multiple people or multiple
machines? If it was from the RTC documentation, we will get that fixed.

Cheers,
Geoff

On 6/22/2011 12:08 PM, rschoon wrote:
saphenwrote:
Hi,
Our team works with RTC for serveral months, we always meet
component out of sync issue.

The situation is like that: we have many streams including many
components, we create one workspace for each stream, and specially we
work with two or more computers, each computer installs RTC also. Then
the question comes, we deliver some changes from a computer, and then
we use another computer, we can find that it shows the same component
is out of sync , in order to fix the issue we have to replace with
the latest from the stream, that means it will download the entire
component to local...

I know we have a workround way to aviod the issue: create different
workspace on different computer for the same stream.But we have many
streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best
way is one workspace can run on every host! The good way is keep out
of sync status and load only the changes, not the entire component,
that is reasonable!

Thoughts?

Hi,

Basically Each user is supposed to have his own repository workspace.
The stream is the thing for sharing. The Repository workspace you are
not supposed to work against in parallel. Each Repository workspace
flowing against a stream gets information about potential incoming
and outgoing changes and can deliver/accept if convenient.

permanent link
Tim Mok (6.6k38) | answered Jun 23 '11, 4:30 p.m.
JAZZ DEVELOPER
Using RTC 3.0 iFix1, I opened a Word document from my sandbox using "Open With" to launch Word in a separate window.

After I saved my changes, I was surprised that the file did not appear in the "Pending Changes" view.

It works fine if I open the document in an Eclipse view, but I lose access to some of the Word functionality.

Is there a way to fix this behaviour, other than using Refresh?

You may be interested in this story item: https://jazz.net/jazz/resource/itemName/com.ibm.team.workitem.WorkItem/169741

That is not come from document, maybe it's our habit...
Every person in our team has a laptop and a desktop, we always change to use, and also we maybe use the desktop via VPN at home, so we install RTC onto the two machines.
From a RTC newer habit, we just create a new workspace for a stream on a machine at the beginning, when we use another machine to connect to JAZZ server with RTC we can get the workspace we just created. So we will load the the same workspace on each machine, so that the issue may come out.
I think it is the habit of each RTC newer which use more than one machine at the same time. And they will meet the issue as I did.

Yep, creating a workspace is a minimal footprint, but if we have many streams/components, the workspaces' number will be double because we have two machines... I think less workspace will lead to be found out easily and fetched quickly from remote jazz server.
It's not a huge amount of overhead to have another workspace. It's not like you're loading both workspaces on both machines. That would most definitely be slower because Pending Changes would have to get the comparison. It's perfectly fine to own a lot of workspaces even if you don't load all of them.

permanent link
Geoffrey Clemm (30.1k33035) | answered Jun 23 '11, 7:01 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Finding a workspace on the server is trivial and fast (those tables are
all indexed).

To understand why it is essential to have a workspace associated with a
single file area, logically, RTC keeps information about the
relationship between a single file area and a workspace. While you
update that file area with that workspace, everything is incremental and
fast. If you try to load a different file area from that workspace, RTC
has to scan the contents of that file area to see how it corresponds to
that workspace. So you never want to switch the file area that is
loaded from a given workspace, because you will pay the cost of that
"synchronization".

Cheers,
Geoff



On 6/23/2011 10:38 AM, saphen wrote:
That is not come from document, maybe it's our habit...
Every person in our team has a laptop and a desktop, we always change
to use, and also we maybe use the desktop via VPN at home, so we
install RTC onto the two machines.
From a RTC newer habit, we just create a new workspace for a stream on
a machine at the beginning, when we use another machine to connect to
JAZZ server with RTC we can get the workspace we just created. So we
will load the the same workspace on each machine, so that the issue
may come out.
I think it is the habit of each RTC newer which use more than one
machine at the same time. And they will meet the issue as I did.

Yep, creating a workspace is a minimal footprint, but if we have many
streams/components, the workspaces' number will be double because we
have two machines... I think less workspace will lead to be found out
easily and fetched quickly from remote jazz server.

gmclemmwrote:
+1 for Ralph's response.

Just for interest's sake, what made you think that it was a good
idea
(or necessary) to share a workspace between multiple people or
multiple
machines? If it was from the RTC documentation, we will get that
fixed.

Cheers,
Geoff

On 6/22/2011 12:08 PM, rschoon wrote:
saphenwrote:
Hi,
Our team works with RTC for serveral months, we always meet
component out of sync issue.

The situation is like that: we have many streams including many
components, we create one workspace for each stream, and specially
we
work with two or more computers, each computer installs RTC also.
Then
the question comes, we deliver some changes from a computer, and
then
we use another computer, we can find that it shows the same
component
is out of sync , in order to fix the issue we have to replace with
the latest from the stream, that means it will download the entire
component to local...

I know we have a workround way to aviod the issue: create different
workspace on different computer for the same stream.But we have
many
streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best
way is one workspace can run on every host! The good way is keep
out
of sync status and load only the changes, not the entire component,
that is reasonable!

Thoughts?

Hi,

Basically Each user is supposed to have his own repository
workspace.
The stream is the thing for sharing. The Repository workspace you
are
not supposed to work against in parallel. Each Repository workspace
flowing against a stream gets information about potential incoming
and outgoing changes and can deliver/accept if convenient.


permanent link
qiu saphen (27126039) | answered Jun 23 '11, 8:35 p.m.
I don't know why you insist on the old mechanism about workspace and single file area.
From my sight, it would be good way to not loading entire component after the status is "out of sync", just load the changes. Like the command of "accept" which accepts remote repository's changes, can I use the "accept" command to accept the changes I make also?

Finding a workspace on the server is trivial and fast (those tables are
all indexed).

To understand why it is essential to have a workspace associated with a
single file area, logically, RTC keeps information about the
relationship between a single file area and a workspace. While you
update that file area with that workspace, everything is incremental and
fast. If you try to load a different file area from that workspace, RTC
has to scan the contents of that file area to see how it corresponds to
that workspace. So you never want to switch the file area that is
loaded from a given workspace, because you will pay the cost of that
"synchronization".

Cheers,
Geoff



On 6/23/2011 10:38 AM, saphen wrote:
That is not come from document, maybe it's our habit...
Every person in our team has a laptop and a desktop, we always change
to use, and also we maybe use the desktop via VPN at home, so we
install RTC onto the two machines.
From a RTC newer habit, we just create a new workspace for a stream on
a machine at the beginning, when we use another machine to connect to
JAZZ server with RTC we can get the workspace we just created. So we
will load the the same workspace on each machine, so that the issue
may come out.
I think it is the habit of each RTC newer which use more than one
machine at the same time. And they will meet the issue as I did.

Yep, creating a workspace is a minimal footprint, but if we have many
streams/components, the workspaces' number will be double because we
have two machines... I think less workspace will lead to be found out
easily and fetched quickly from remote jazz server.

gmclemmwrote:
+1 for Ralph's response.

Just for interest's sake, what made you think that it was a good
idea
(or necessary) to share a workspace between multiple people or
multiple
machines? If it was from the RTC documentation, we will get that
fixed.

Cheers,
Geoff

On 6/22/2011 12:08 PM, rschoon wrote:
saphenwrote:
Hi,
Our team works with RTC for serveral months, we always meet
component out of sync issue.

The situation is like that: we have many streams including many
components, we create one workspace for each stream, and specially
we
work with two or more computers, each computer installs RTC also.
Then
the question comes, we deliver some changes from a computer, and
then
we use another computer, we can find that it shows the same
component
is out of sync , in order to fix the issue we have to replace with
the latest from the stream, that means it will download the entire
component to local...

I know we have a workround way to aviod the issue: create different
workspace on different computer for the same stream.But we have
many
streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best
way is one workspace can run on every host! The good way is keep
out
of sync status and load only the changes, not the entire component,
that is reasonable!

Thoughts?

Hi,

Basically Each user is supposed to have his own repository
workspace.
The stream is the thing for sharing. The Repository workspace you
are
not supposed to work against in parallel. Each Repository workspace
flowing against a stream gets information about potential incoming
and outgoing changes and can deliver/accept if convenient.


permanent link
Shashikant Padur (4.2k27) | answered Jun 24 '11, 12:14 a.m.
JAZZ DEVELOPER
Just to clarify, if your component is out of sync, choosing to reload the component will not bring all the files down from that component. It will synchronize only the changed/newer files but you will incur the cost of synchronization as Geoff mentioned because it has to figure what files to synchronize. The reload has a side effect that if you have local changes in your sandbox it would be overwritten.

You accept changes when you have incoming changes into your workspace. In your case, the remote repository workspace is the same for the sandboxes loaded in multiple locations. So accept will not work here.

I don't know why you insist on the old mechanism about workspace and single file area.
From my sight, it would be good way to not loading entire component after the status is "out of sync", just load the changes. Like the command of "accept" which accepts remote repository's changes, can I use the "accept" command to accept the changes I make also?

Finding a workspace on the server is trivial and fast (those tables are
all indexed).

To understand why it is essential to have a workspace associated with a
single file area, logically, RTC keeps information about the
relationship between a single file area and a workspace. While you
update that file area with that workspace, everything is incremental and
fast. If you try to load a different file area from that workspace, RTC
has to scan the contents of that file area to see how it corresponds to
that workspace. So you never want to switch the file area that is
loaded from a given workspace, because you will pay the cost of that
"synchronization".

Cheers,
Geoff



On 6/23/2011 10:38 AM, saphen wrote:
That is not come from document, maybe it's our habit...
Every person in our team has a laptop and a desktop, we always change
to use, and also we maybe use the desktop via VPN at home, so we
install RTC onto the two machines.
From a RTC newer habit, we just create a new workspace for a stream on
a machine at the beginning, when we use another machine to connect to
JAZZ server with RTC we can get the workspace we just created. So we
will load the the same workspace on each machine, so that the issue
may come out.
I think it is the habit of each RTC newer which use more than one
machine at the same time. And they will meet the issue as I did.

Yep, creating a workspace is a minimal footprint, but if we have many
streams/components, the workspaces' number will be double because we
have two machines... I think less workspace will lead to be found out
easily and fetched quickly from remote jazz server.

gmclemmwrote:
+1 for Ralph's response.

Just for interest's sake, what made you think that it was a good
idea
(or necessary) to share a workspace between multiple people or
multiple
machines? If it was from the RTC documentation, we will get that
fixed.

Cheers,
Geoff

On 6/22/2011 12:08 PM, rschoon wrote:
saphenwrote:
Hi,
Our team works with RTC for serveral months, we always meet
component out of sync issue.

The situation is like that: we have many streams including many
components, we create one workspace for each stream, and specially
we
work with two or more computers, each computer installs RTC also.
Then
the question comes, we deliver some changes from a computer, and
then
we use another computer, we can find that it shows the same
component
is out of sync , in order to fix the issue we have to replace with
the latest from the stream, that means it will download the entire
component to local...

I know we have a workround way to aviod the issue: create different
workspace on different computer for the same stream.But we have
many
streams, we don't want to add more workspaces...

Does RTC team have any idea to avoid this issue? I think the best
way is one workspace can run on every host! The good way is keep
out
of sync status and load only the changes, not the entire component,
that is reasonable!

Thoughts?

Hi,

Basically Each user is supposed to have his own repository
workspace.
The stream is the thing for sharing. The Repository workspace you
are
not supposed to work against in parallel. Each Repository workspace
flowing against a stream gets information about potential incoming
and outgoing changes and can deliver/accept if convenient.


permanent link
Ralph Schoon (63.1k33646) | answered Jun 26 '11, 2:55 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Using RTC 3.0 iFix1, I opened a Word document from my sandbox using "Open With" to launch Word in a separate window.

After I saved my changes, I was surprised that the file did not appear in the "Pending Changes" view.

It works fine if I open the document in an Eclipse view, but I lose access to some of the Word functionality.

Is there a way to fix this behaviour, other than using Refresh?


Bill, you can try to set Eclipse to detect changes made out of eclipse. But basically the issue is you have to make Eclipse aware of external changes, either refreshing or otherwise. If Eclipse does not detect the change you get the issues you describe.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.