Scrubbing to control VOB storage growth

Scrubber utilities remove unneeded data from VOB databases. You can control how often they run and what data they remove.

VOB storage must be managed to control growth. Two utilities, the scrubber and the vob_scrubber, help manage the growth of VOB storage. The following table describes the function of each of these utilities.
Table 1. Default scrubber and vob_scrubber actions
Program Item removed (default) How removed item is created
scrubber Cleartext containers that have not been referenced for more than 96 hours Any command that accesses a version of an artifact in a VOB
Derived objects that have not been referenced for more than 96 hours clearmake, omake, clearaudit (dynamic views only)
vob_scrubber Certain event records (see vob_scrubber reference page for details) Any command that creates or modifies elements, versions, or other metadata.
Certain oplog entries (see vob_scrubber reference page for details) Any modification of data or metadata in a replicated VOB.

Both utilities run on a default schedule with default parameters on any computer that hosts one or more VOBs. You might need to reconfigure scrubbing parameters and schedules if the default ones are not appropriate.

Scrubbing VOB storage pools

Several basic rules the govern operations of the scrubber:
  • Cleartext pools are scrubbed to control their size. These pools are essentially caches; scrubbing unneeded data containers in a cleartext pool has little or no effect on performance.
  • Derived object pools are scrubbed to delete DO data containers that are no longer being used by any view. Scrubbing also removes the corresponding derived objects from the VOB database.
  • Source pools are never scrubbed.
  • The scrubber does not delete a container until all of its handles are closed. You can ensure that a container has no open handles by unmounting the VOB in which the container is stored from all hosts.

In the default configuration, the scrubber runs nightly as part of the Daily VOB Pool Scrubbing task. You can also run it manually.

Each derived object and cleartext storage pool has its own scrubbing parameters, which control how the scrubber processes that pool. To change the way VOB storage pools are scrubbed, you can change the scrubbing parameters for an individual pool by using the HCL VersionVault Administration Console or a mkpool –update command. For more information, see Adjusting default scrubbing parameters.

Scrubbing VOB databases

Almost every change to a versioned artifact is recorded in the VOB database as an event record. Some event records have permanent value, such as those for the creation of elements and versions. Others might not be useful to your organization or might lose their value as time passes. (For example, you probably do not care about the removal of an unneeded or obsolete version label.)

Each VOB host has a scrubber configuration file, versionvault-home-dir\config\vob\vob_scrubber_params, which controls vob_scrubber operation for all VOBs on that host. If you need more control over scrubbing schedules, you can create a scrubber parameters file for each VOB. This file is also named vob_scrubber_params, but it is located in the VOB storage directory. See the vob_scrubber reference page for more information.
Note: Deleting event records and other metadata from the VOB database, using the vob_scrubber or any other mechanism (rmver, rmelem, relocate, and so on), increases the amount of free space in the database, but does not reduce the disk space used by the VOB database. A regularly scrubbed VOB database grows slowly and should not require further intervention to keep growth under control. However, if you must occasionally force a reduction in the size of a VOB database, scrub it, and then run the reformatvob command.