It's all about the answers!

Ask a question

Where can I find about RTC SCM internals

Karthik Krishnan (859393134) | asked Apr 21 '15, 9:48 a.m.
edited Apr 27 '15, 1:47 p.m. by Jennifer Cianchetta-Riordan (2512)
Where can I find/read about the RTC SCM internals?

I am interested in learning about how the data is organized, how the baslines / snapshots are organized

Are there any wiki articles regarding this?

Accepted answer

permanent link
Surya Tripathi (65017) | answered Apr 21 '15, 2:06 p.m.
Hi Karthik,
You can learn more about RTC SCM here -
I would encourage you to look at the online help and tutorials. There are many different ways to organize data in RTC source control. Basically, all the source code reside in components. Each component usually contains source code that are logically grouped together. A stream contains a set of components that can be built together to create a product. Baselines are created for components. By creating baselines, you are creating a configuration of the component that you can go back to.  A snapshot is a collection of component baselines. If you need to go back in time to retrieve a particular configuration of your stream/workspace, you can create your workspace from the snapshot.
I am giving a very generic answer here. Let us know if there is a specific question that I can answer.

Karthik Krishnan selected this answer as the correct answer

Karthik Krishnan commented Apr 22 '15, 10:52 a.m. | edited Apr 22 '15, 10:53 a.m.

thank you! I am more interested in the internals of the files are stored / referred. Will check this document though

sam detweiler commented Apr 22 '15, 12:42 p.m.

as I understand it, everything is stored as a delta (aka diff), and all stored in a SQL database. I believe these have an internal binary representation, not a text 'diff' file.

extract of a 'file' is a realtime reconstruction of the current state from the accumulated deltas. This is why the increased cpu load on file extract. 

External caching works because the 'get file' request responds with a name that causes construction of the requested state results.  that name is unique at all times.  if the data was cached at some time by filename, then it will always match that combined change state forever, so no reconstruction is required.

a change 'set' is a collection of one or more of those individual file changes. I believe the change set is a collection of references/links to the result of the delta for each affected file. (so the change is actually only stored once).

Karthik Krishnan commented Apr 23 '15, 6:43 a.m.

Thanks Sam for detailed information

One other answer

Your answer

Register or to post your answer.