Removes a derived object from a VOB
Product | Command Type |
---|---|
ClearCase | cleartool subcommand |
Attache | command |
Platform |
---|
UNIX |
Windows |
Remove individual derived objects:
Remove collections of derived objects:
The rmdo command deletes one or more derived objects (DOs). Use rmdo to remove DOs (for example, damaged DOs or DOs that were built incorrectly) so that other users do not use them inadvertently.
NOTE: This command does not apply to snapshot views.
The details of the removal process depend on the kind of DO (use lsdo -long to determine the kind of DO):
For a shared derived object whose data container is in VOB storage, rmdo deletes the entry in the VOB database, and also deletes the data container file (from one of the VOB's derived object storage pools).
CAUTION: If you need to remove a shared DO, use lsdo -long to identify the views that reference the DO. Ask the owner of each view to remove the DO from the view with an operating system command or by running make clean or an equivalent command. If the DO is not removed from the referencing views before you use rmdo, error messages appear. For example, when users try to access the DO from the referencing views, the view_server logs VOB warnings. Also, you may see INTERNAL ERROR
messages in the ClearCase error_log file; these messages are generated when clearmake or an OS-level command tries to access the DO. The derived object's name is removed from the directory by the OS-level access; thus, subsequent accesses return not found
errors.
For an unshared derived object whose data container is in view-private storage, rmdo deletes the entry from the VOB database, but does not delete the data container from view storage. The data container is an ordinary file that can still be listed, executed, and so on, but it cannot be a candidate for configuration lookup. The ls -long command lists it with a [no config record]
annotation. To delete the data file, use an operating system command.
For a nonshareable derived object, which does not have an entry in the VOB database, rmdo converts the DO into an ordinary view-private file. To delete the file, use an operating system command.
In each case, rmdo also deletes the associated configuration record if it is no longer needed. Both of the following conditions must be true:
No other sibling DO (created in the same build script execution) still exists.
The DO is not a build dependency (subtarget) of another DO that still exists.
rmdo does not delete DO versions. To delete a DO that has been checked in as a version of an element, use rmver.
ClearCase includes a utility, scrubber, that deletes shareable DOs. scrubber deletes the entries in the VOB database and (for shared DOs) the data containers in the VOB's storage pools. By default, the ClearCase scheduler runs scrubber periodically. See the schedule reference page for information on describing and changing scheduled jobs.
Each DO pool has scrubbing parameters, which you can modify with the mkpool -update command.
Identities: You must have one of the following identities:
DO owner
DO group member
VOB owner
root (UNIX)
Member of the ClearCase group (Windows)
To delete a shared DO, you must have one of the following identities:
VOB owner
root (UNIX)
member of the ClearCase group (Windows)
Locks: An error occurs if one or more of these objects are locked: VOB, pool.
Mastership: (Replicated VOBs only) No mastership restrictions.
HANDLING OF LIKE-NAMED DERIVED OBJECTS. Default: Deletes at most one DO for each file name specified with command arguments. A file name with a DO-ID (for example, hello.o@@24-Mar.11:32.412) specifies exactly which DO to delete. A standard or view-extended pathname specifies the DO that appears in the view.
To determine the DO-IDs of derived objects, use lsdo.
SPECIFYING DERIVED OBJECTS. Default: With -all or -zero, the default is to list all DOs in the current working directory. If you do not specify one of these options, you must supply at least one argument.
|
|
The UNIX examples in this section are written for use in csh. If you use another shell, you may need to use different quoting and escaping conventions.
The Windows examples that include wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you may need to change the wildcards and quoting to make your command interpreter process the command appropriately.
In cleartool single-command mode, cmd-context represents the UNIX shell or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt. In Attache, cmd-context represents the workspace prompt.
Delete the derived object hello.obj@@24-Mar.11:32.412.
cmd-context rmdo hello.obj@@24-Mar.11:32.412
Removed derived object "hello.obj@@24-Mar.11:32.412".
Delete all derived objects named hello in the current working directory.
cmd-context rmdo -all hello.exe
Removed derived object "hello.exe@@23-Mar.14:16.178".
Removed derived object "hello.exe@@23-Mar.19:25.394".
Delete all zero-referenced derived objects in the hworld directory.
cmd-context rmdo -zero hworld
Removed derived object "hworld/hello.o@@23-Mar.20:42.373".
Removed derived object "hworld/hello.o@@23-Mar.20:36.228".
Removed derived object "hworld/hello@@23-Mar.20:42.382".
Removed derived object "hworld/hello@@23-Mar.20:36.234".
Removed derived object "hworld/util.o@@23-Mar.20:42.376".
Removed derived object "hworld/util.o@@23-Mar.20:36.231".
clearmake, lsdo, scrubber, Building Software
Feedback on the documentation in this site? We welcome any comments!
Copyright © 2001 by Rational Software Corporation. All rights reserved. |