view_scrubber
Remove derived object data
containers from dynamic view storage
SYNOPSIS
view_scrubber [
–p |
-a ]
[
–k ] [
–n ] [
DO-pname ...
]
DESCRIPTION
The view_scrubber program
cleans a view's private storage area by removing data containers for derived
objects (DOs). On Windows systems, view_scrubber scrubs
only the files that are piped to its stdin stream.
On UNIX systems, the most common way to run the view_scrubber is
indirectly, by running the view_scrubber.sh script supplied
with ClearCase.
Note: This command does not apply to
snapshot views.
Warning: This command modifies the
way in which view-resident objects are combined with VOB-resident objects
to produce a virtual workspace. To avoid errors, make sure that no application
or development tool is using the view's files when this command is executed.
Scrubbing is useful in the situations
described in the following sections.
Cleaning Up After a Winkin
When a clearmake or omake build winks in a shareable DO for the first
time, the DO's data container is copied from the private storage area of the
view in which it was built to the VOB storage pool. At this point:
- The
view where the DO was originally built continues to use the data container
in view storage.
- Any
other view to which the DO is subsequently winked in uses the data container
in VOB storage.
Running view_scrubber in
the view where the DO was built simplifies the situation. view_scrubber performs
the following steps:
- Removes
the DO with an operating system command. This deletes the data container from
view storage.
- Winks
in the DO to the view, which establishes a link to the data container in VOB
storage.
Now, all views that share the DO access
the data container in VOB storage, which eliminates the redundant, space-consuming
data container in view storage.
Self-Winkin
By default, the data container for
a nonshareable DO or an unshared DO remains in view storage until the DO is
deleted or overwritten. view_scrubber –p transfers
the data container to VOB storage, thus freeing space in the view storage
area. In essence, this involves winking in the DO to the same view. view_scrubber –p performs
the following steps:
- (Nonshareable
DO only) Converts the DO to a shareable DO by writing information about the
DO into the VOB.
If the DO has any sub-DOs or siblings, view_scrubber –p or view_scrubber –a makes them shareable. view_scrubber –a stops
after this step is complete. view_scrubber –p executes
the following additional steps:
- Promotes
the data container from view storage to VOB storage.
- Removes
the DO with an operating system command, which deletes the data container
from view storage.
- Winks
in the DO to the view, which establishes a link to the data container in VOB
storage.
You can also use the winkin command to accomplish this scenario.
Note: When a nonshareable DO is converted
to a shareable DO, its DO ID changes. For more information, see Building Software.
OPTIONS AND ARGUMENTS
Advertising and Promotion
- Default
- view_scrubber removes
view-resident data containers, then restores the derived objects to the view
through winkin. Requirement: The derived objects' data
containers must already be in VOB storage.
- –a
- Before performing the default processing
described above, writes information about the DO to the VOB to advertise its
availability for winkin, but does not copy the DO to the VOB.
- –p
- Before performing the default processing
described earlier, writes information about the DO to the VOB to advertise
its availability for winkin, then promotes (copies) the derived objects' data
containers from view storage to VOB storage. This removes the requirement
that the data containers be in VOB storage. (view_scrubber –p implies
execution of view_scrubber –a.)
Error Recovery
- Default
- view_scrubber aborts
if it is unable to complete its work on any derived object.
- –k
- Keeps going, even if one or more derived
objects cannot be processed successfully.
No-Execute Option
- Default
- view_scrubber performs
its work and displays appropriate messages.
- –n
- Suppresses the actual processing of
data containers. view_scrubber displays messages describing
the work it would have performed.
Derived Objects to Process
- Default
- If you do not specify any DOs as command
arguments, view_scrubber reads a one-per-line list of pathnames
from stdin, which must be a pipe.
- DO-pname ...
- One or more standard pathnames of derived
objects.
EXAMPLES
- On
a UNIX system, make the view to be scrubbed the current working view, and
move to the directory of interest. Then scrub DO containers for the entire
directory tree, using the script ccase-home-dir/etc/view_scrubber.sh (which
invokes the view_scrubber program).
- On
a Windows system, make the view to be scrubbed the current working view, and
move to the directory of interest. Then scrub DO containers for the entire
directory tree, using a pipe.
- Scrub
two DOs, promoting the data containers to VOB storage.