The mkpool command creates a source storage pool, derived object storage pool, or cleartext storage pool, and initializes the pool's scrubbing parameters. You can also use this command to update the scrubbing parameters of an existing storage pool.
Storage pools are directories used as physical storage areas for different kinds of data:
Creating a new VOB with the mkvob command creates one default pool of each kind: sdft (source pool), ddft (derived object pool), and cdft (cleartext pool).
mkpool creates a storage pool as a directory within the VOB storage area. Source pools are always created within subdirectory s of the VOB storage directory; derived object pools are created within subdirectory d; cleartext pools are created within subdirectory c. The –ln option allows you to create pools elsewhere, to be accessed at the standard locations through symbolic links.
Each file element is assigned to one source pool and one cleartext pool. The source pool provides permanent storage, in one or more data container files, for all of the element's versions. If the element's versions are stored in a compressed format, the cleartext pool is used to cache extracted versions of that element, as described earlier. (If each version is stored uncompressed in a separate data container, the cleartext pool is not used.)
Each directory element is also assigned to one source pool and one cleartext pool. But directory versions themselves are not stored in these pools. (They are stored directly in the VOB database.) Rather, a directory's pool assignments are used solely for pool inheritance: each element created within the directory inherits its source and cleartext pool assignments.
Each directory element is also assigned to one derived object pool. All shared derived objects with path names in that directory are stored in that pool. A new directory element inherits the derived object pool of its parent, along with the source and cleartext pools.
The pool inheritance scheme begins at the VOB root directory (top-level directory element) created by mkvob, which is automatically assigned to the default pools.
You can change any of an element's pool assignments with the chpool command.
Scrubbing is the process of reclaiming space in a derived object pool or cleartext pool. (Source pools are not subject to scrubbing.) This process is performed by the scrubber utility. mkpool initializes or updates these scrubbing parameters:
(reclaim-kbytes) Size to which scrubber attempts to reduce the pool |
|
(hours) Threshold to prevent premature scrubbing of recently referenced objects |
The default settings for the scrubbing parameters are max-kbytes = 0, reclaim-kbytes = 0, hours = 96. For details on how these parameters are interpreted, see the scrubber reference page.
By default, the scheduler runs scrubber periodically. For information on describing and changing scheduled jobs, see the schedule reference page.
Restriction: pname must be a full path name, starting with a slash (/). It must also be a global path name, valid on every host from which users will access the VOB. mkpool attempts to verify that this path name is truly global, using a simple heuristic. (For example, a path name that begins with /net is likely to be global.) If it suspects that pname is not global, mkpool proceeds anyway, but displays a warning message:
Warning: Linktext for pool does not appear to be a global path.
This mechanism is independent of the network storage registry facility. Thus, the path name to a remote storage pool directory must be truly global, not global within a particular network region.
When updating an existing pool, you must use at least one of –size and –age.
Windows: If you invoke a command built in to the Windows shell (for example, cd, del, dir, or copy) instead of a batch file, you must invoke the shell with cmd /c. For example:
–alert 'cmd /c cd \tmp & del *.*'
The UNIX system and Linux 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 system and Linux shells or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt.
cmd-context mkpool –source –c "pool for c source files" c_pool
Created pool "c_pool".
cmd-context mkpool –derived –nc –size 10000 8000 do1
Created pool "do1".
cmd-context mkpool –nc –update –age 168 do1
Updated pool "do1".
cmd-context mkpool –nc –cleartext –ln /usr/vobstore/ccase_pools/c2 cltxt2
Created pool "cltxt2".
This command creates this symbolic link:
vob-storage-dir-pname/c/cltxt –> /usr/vobstore/ccase_pools/c2
cmd-context mkpool -cleartext -c "alternate cleartext pool" my_ctpool
Created pool "my_ctpool".
cmd-context find . -all -element 'pool(cdft)' -exec 'cleartool chpool ^
-force my_ctpool $CLEARCASE_PN'
Changed pool for "/users_hw" to "my_ctpool".
Changed pool for "/users_hw/bin" to "my_ctpool".
Changed pool for "/users_hw/bin/hello" to "my_ctpool".
Changed pool for "/users_hw/bugs" to "my_ctpool".
Changed pool for "/users_hw/bugs/bug.report.21" to "my_ctpool".
Changed pool for "/users_hw/doc" to "my_ctpool".
Changed pool for "/users_hw/doc/util.doc" to "my_ctpool".
Changed pool for "/users_hw/include" to "my_ctpool".
Changed pool for "/users_hw/libs" to "my_ctpool".
Changed pool for "/users_hw/libs/libntx.a" to "my_ctpool".
Changed pool for "/users_hw/libs/libpvt.a" to "my_ctpool"
.
.
.