cleartool: Error: Checkout disallowed for element "." - clearcase

I got the error while trying to check out the "." directory in clearcase.
FYI:
view is syncronized with the stream config and all components are modifiable.
The stream has foundation baselines as well as recommended baselines.
The vob is the component of ucm pvob.
cleartool co -nc "."
cleartool: Error: Checkout disallowed for element ".":
the component containing the element or the current stream is read-only
in this project, or the stream lacks foundation baselines.
cleartool: Error: Unable to check out ".".
How would you troubleshoot this error message?

It seems '.' represents the root folder of the vob here.
The vob is the component of ucm pvob.
Make sure you don't checkout a pvob.
You need to checkout the vob of the component (associated to a pvob), not a pvob.
I have seen this message when trying to checkout an element within aVob/lost+found folder.
If that is the case, you need to not select that 'lost+found' directory in the config spec.
element /aVob/lost+found -none
Otherwise:
double-check your component is indeed writable in the project (properties on the project)
make sure your stream knows about that
cleartool chstream -generate stream:a_stream#\a_pvob
make sure the config spec of your view is in sync with the Stream configuration
cd /path/to/your/view
cleartool setcs -stream

Related

Cleartool annotate command giving error - Not an object in a vob:"java file"

I am new to clearcase and I am trying to generate a blame file using annotate command, but I am getting the following error :
cleartool: Error: Not an object in a vob: "App.java"
I followed these steps :
Created a view in clearcase explorer
Browsed to the location (C:\test_view)
Ran: cleartool annotate App.java
This resulted in the following -
cleartool: Error: Not an object in a vob: "App.java".
You cannot execute cleartool commands on elements (versioned files or folder) directly in a snapshot root folder like c:\test_View.
You need to edit its config spec:
cd c:\test_View
cleartool edcs
Add selection rules (like at least element * /main/LATEST, unless this is an UCM view, in which case selection rules are already there), and load rules in order to load at least the content of a Vob.
Then you can go within the vob and do some cleartool annotate.
cd c:\test_view\avob
cleartool annotate afile
Note: if your file App.java is not yet versioned, you would need to add it to source control (in any folder in c:\test_view\avob), with cleartool mkelem, or, for multiple files, clearfsimport.
Please create VOBs through create VOB program.
Then create dynamic view using clearcase explorer.
Mount the VOBs on the dynamic view.
Once mounted, in the view explorer, right click and add text file.
rt-click text file to add to source and then checkin the file after making the necessary changes.
from command prompt go to the VOB and run
cleartool annotate
Z:>cd test_tut_element_vob
Z:\test_tut_element_vob>cleartool annotate TestFile.txt
Annotated result written to "TestFile.txt.ann".

cleartool Unable to determine modified elements in "<UUID>" in stream "<stream name>"

I am using ClearCase UCM - Multisite (version 7.x) When I rebase a partcular stream, I get following error.
cleartool Unable to determine modified elements in "<UUID>" in stream "<stream name>"
Advancing to baseline "temp2.6922" of component "cframework_src"
...
Updating rebase view's config spec...
Creating integration activity...
Setting integration activity...
Merging files...
cleartool: Error: Unable to determine modified elements in vob "14828f48.3c1411d6.a3a2.00:01:80:c3:ed:84" in stream "stream_name".
cleartool: Error: Unexpected error in rebase.
cleartool: Error: Unable to perform merge.
cleartool: Error: Unable to perform integration.
cleartool: Error: Unable to rebase stream "<stream_name>".
The magic uid somehow relate to a Vob family uuid-- listed below
Tag: \cframework_src
Global path: \\svr-inh-net-01\ccvobstore2\cframework_src.vbs
Server host: svr-inh-cc-02
Access: public
Mount options:
Region: MGI_WIN
Active: YES
Vob tag replica uuid: 510b4e21.ecef11df.8889.00:01:84:38:25:75
Vob on host: svr-inh-cc-02
Vob server access path: /project/ccvobstore2/cframework_src.vbs
Vob family uuid: 14828f48.3c1411d6.a3a2.00:01:80:c3:ed:84
Vob replica uuid: 510b4e21.ecef11df.8889.00:01:84:38:25:75
Vob registry attributes: replicated
What is the real maning of the error? How can I fix this?
More info
There are other streams which under same pvob. They all work fine.
Sync is complete - no errors - anywhere.
What is puzzling is lack of information in error logs and clearcase logs.
This solution resolved the issue:
canceled the current rebase
After clearing the rebase, issued the following commands against
the branch type:
cleartool checkvob -hlink -f brtype:<stream name>#\***pvob
cleartool checkvob -hlink -f brtype:<stream name>#\childvob
cleartool checkvob -global -acquire -f brtype:<stream name>#\***pvob
This repaired issues with the branch type.
After performing this step, issued "cleartool chstream -generate"
or sycn the stream with the project from the GUI.
This is usually linked to a Vob not declared in the current region, either the \cframework_src itself, or one of its adminVob/PVob (since it is an UCM Vob).
Try a cleartool descr -l vob\cframework_src to see all the linked AdminVob and check if they are registered.
Make also sure it isn't related to right issue when accessing to a specific element (file or directory), by doing a cleartool ls in the destination view (the one where the rebase is in progress).
If it is limited to a specific stream, do a:
cleartool descr -l stream:aStream#\aPVob
Compare its output to the same command for another Stream (which works), in order to check if there is a permission issue (like a "Group NOBODY", because it was created with the wrong CLEARCASE_PRIMARY_GROUP)

cleartool error: Unable to rebase stream

Can't rebase stream to the foundation baseline. Probably the baseline is corrupted.
Is it possible to fix this baseline?
cleartool: Error: Version map for baseline is unavailable.
cleartool: Error: Unable to get unlabelled baselines in foundation
cleartool: Error: Unable to determine if configuration is valid
cleartool: Error: Unable to rebase stream
First, are you sure to select the right baseline?
If you select a composite baseline, it is per its nature unlabelled.
Second, what version of ClearCase are you using? Is your project a multisite one?
Your error message is seen in the IBM technote "Creating a child stream in a ClearCase MultiSite environment results in Error"
The root cause for the problem is that baselinelbtype on a site where you are creating the stream has got a following postfix:
lbtype:<lbtype_name>_in_progress#\<cvob>
whereas the baselinelbtype on a site where baseline has been created and it's mastered object is as follows:
lbtype:<lbtype_name>#\<cvob>
You can check out this IBM technote "Version map for baseline is unavailable"
To confirm this issue, go to a command prompt, change directory (cd) into a UCM view and into the root of the component with the offending baseline.
Run a cleartool lsbl -l and check on each baseline from the bottom up for Label Status, noting those that are unlabelled baselines.
Then starting at the oldest unlabelled baseline and working forward, run chbl
cleartool chbl -incremental baseline:#\.
This will apply a label status to each unlabelled baseline and will then allow a rebase of a child stream.

can't create clearcase component?

I can create ClearCase UCM component from ClearCase project explorer but can't create it through command line.
This is what I have used:
cleartool mkcomp -nc -root /vobs/spider1_pvob/bat1 bat1#/vobs/spider1_pvob
cleartool: Error: Unable to resolve component root directory "/vobs/spider1_pvob/bat1": ClearCase object not found
cleartool: Error: Unable to create component.
What would be the correct command to use for creating this component?
I always create a component in a ClearCase view, using a vob and not a pvob for the root directory.
So in your case, you would need to have:
a dynamic view started
cleartool startview myView
the vob mounted:
cleartool mount /vobs/spider1_vob
that same view set:
cleartool setview myView
(that ways, /vobs reflects the content of the view myView)
Once your view is properly started and set, then you can do
cleartool mkcomp -nc -root /vobs/spider1_vob/bat1 bat1#/vobs/spider1_pvob
Note that I use a vob /vobs/spider1_vob/(bat1) for the root directory, even though the component (which is an UCM metadata) is declared in a pvob: #/vobs/spider1_pvob
See "What are the precautions to be taken while creating a clearcase component?" and "cannot see pvob on clearcase GUI?" for the difference between a pvob and a vob:
The root directory of a component should be in a vob, not a pvob.
A pvob contains the definition of a component.
A vob contains its data (files and directories)
I use a dynamic view here, since the only way for a path starting with /vobs is in Unix, after a cleartool setview.
If you don't set a dynamic view, you can still use it with the full path:
/view/myView/vobs/spide1_vob
(since /view is the mounting point for all the dynamic views)

What's the syntax to remove a baseline in ClearCase?

It looks like I can remove a just created baseline from ClearCase UCM with a simple command:
$ cleartool rmbl p_xxx_main_2_0_3_1
but this gives me the error:
cleartool: Error: Unable to find baseline "p_xxx_main_2_0_3_1".
cleartool: Error: Unable to remove baseline "p_xxx_main_2_0_3_1".
I can list the baselines:
$ cleartool lsbl -s
p_xxx_main_2_0_3_1.1465
p_xxx_main_2_0_3_1
I'm running this operations in the stream snapshot view. It looks like I need to specify more info. How should I specify the baseline?
You should at least specify the pvob (UCM Project Vob where the baseline is defined):
cleartool rmbl p_xxx_main_2_0_3_1#/vobs/apvob
If you don't know the pvob of the baseline, it is the same than the one of the Stream where your UCM view is currently attached to.
And you can get the Stream of your view by typing (anywhere within said view):
cleartool lsstream -cview

Resources