IBM Support

Cannot rebase a non-modifiable component after creating a new baseline with the -identical option

Troubleshooting


Problem

This technote explains why attempts to change an IBM Rational ClearCase UCM baseline of a read-only component after a new baseline is created using the -identical option (cleartool mkbl -identical) fails.

Symptom

After making a new baseline using cleartool mkbl -identical, attempts to change the baseline of a non-modifiable component in that project results in the following error:

---------------------------
Baseline Validation
---------------------------
"Can't switch to baseline {baseline name} of component because the stream has made changes based upon the current baseline."
---------------------------
OK  
---------------------------

Cause

The -identical option caused a baseline to get applied across all the components in the project, modifiable and non-modifiable.

Resolving The Problem

This is expected functionality as the -identical option is used to create a new baseline for all components, regardless of whether they have actually been modified.

If you need to continue using the -identical option when making a baseline, then you should exclude the non-modifiable components. Otherwise, you can use composite baselines to prevent the problem with rebasing a non-modifiable component. See the workarounds detailed below.

WORKAROUNDS:

  1. Exclude the read-only components when making an identical baseline:

    cleartool mkbl -identical -component mod_a,mod_b,mod_c ...

    Notes:
    • Review technote 1125223 for more details on using cleartool mkbl -identical.
    • With a large number of modifiable components this can become cumbersome. Use %[mod_comps]p in a script.

  2. Composite baselines can prevent this problem, but they do not fix the problem with current projects. In a new project, use a composite baseline for the stream. The stream will be able to create a composite baseline, for which the modifiable components with modifications will get new baselines created in the stream, while the non-modifiable ones (and the unmodified modifiable ones) will be recorded with the foundation baselines. However, there will not be any conflict if you try to change the baseline of a non-modifiable component.

[{"Product":{"code":"SSSH27","label":"Rational ClearCase"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"UCM: Baseline","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF015","label":"IRIX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"2002.05.00;2003.06.00;7.0;7.0.1","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}},{"Product":{"code":"SSSH27","label":"Rational ClearCase"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"UCM: Baseline","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
16 June 2018

UID

swg21145335