Friday, September 7, 2007

ClearCase credential manager cannot be started

After successfully using CC for sometime, a developer got a serials of weird ClearCase problems on the only Windows 2003 server running CC client. Such as:

ClearCase credencial manager service cannot start, even after clearn re-installation;

Sometmies ClearCase explorer hangs at start up;

The snapshot views hanged during update;

After click on the snapshot view shortcut in CC explorer, it hangs for a long time, then prompts "Timed out trying to start view_server for view ...";

When right click on the elements in a snapshort view in Windows explorer, Windows explorer hangs;

CC explorer hangs when click on "finish" button to create a view (both snapshot and dynamic);

Problem adding dynamic view shortcut to CC explorer, it reports "The name specified is not a registered view tag";

Some dynamic views can start up properly while other hangs. Once the dynamic views started, it can check-out/in.

....

The vob server is on Solaris, the view storage is locally on the Windows 2003 server. After some drill down, we noticed that some ccgzip.exe processes were running in Task Manager. And the updating of snapshort view always stopped at elements with type compressed_file. To help investiation, we also installed procmon to capture the processes status.

It turned out that our PATH env variable is too long, and ClearCase bin folder happens to be the last one in the string. So some the dlls the ccgzip program referred to cannot be located. After moving the ClearCase bin folder to the beginning of the PATH string, everything works like a charm.

.pid file under view storage

After the view is started, a .pid file is created under the view storage directory. The pid of its view_server process is stored in the file, so ClearCase can keep track on which view server process is associated with it. After the view_server process is terminated by "cleartool endview -server ", the .pid file will be removed by ClearCase.

However, in certain situatations, the .pid fails to be removed and the view will have problem starting up again. You can safely delete the .pid file and try to start the view again.

Monday, August 13, 2007

What to do when the developer is on vacation?

It is not uncommon that a developer goes on vacation when the team find out that some files are checked out and reserved by him. In this case you don't want to remove the view and unco all the check-outs. Instead, a cleartool unreserve command will switch the reserved checkout to unreserved mode, and allow the other developers to be able to check-in their changes.

First, look for the version tree (or lsco) to identify the view that contains the checked-out file. In this example, DP14_9.0_Rel.

Next, find out the view storage location that holds the files.

cleartool lsview DP14_9.0_Rel
DP14_9.0_Rel \\CBAD1-KCIDJJ\views_stg\DP14\DP14_9.0_Rel.vws

or using command:
cleartool desc -l vob:/vobs/vob_name
....
VOB holds objects from the following views:
CBAD1-KCIDJJ:C:\views_stg\DP14\DP14_9.0_Rel.vws [uuid 181126d5.374a4296.bf6a.58:f1:7a:85:ec:21]

Now, set the checkout to unreserved mode.

cleartool unreserve -view CBAD1-KCIDJJ:C:\views_stg\DP14\DP14_9.0_Rel.vws .\CBFE-FE\JavaSource\com\cibc\bankframe\fe\withcustomer\inquiries\common\InquiriesEPanel.java