promote_server

Changes storage location of derived object data container

Applicability

Product

Command type

VersionVault

command

Platform

UNIX

Linux

Windows

Synopsis

Invoked by clearmake, omake, or winkin, if necessary, when it winks in a derived object

Description

Note: Never run promote_server manually. It must be invoked only by clearmake or omake. For information about transferring a derived object's data container to VOB storage, see the view_scrubber reference page.

The promote_server program migrates a derived object's data container file from private storage to shared storage. When clearmake or omake winks in a derived object (DO) that was previously unshared, it invokes promote_server to copy the data container file from view-private storage to a VOB storage pool.

Note: clearmake or omake also migrates a DO's configuration record from private storage to shared storage at the same time. This work is performed by clearmake or omake itself, not by promote_server.

The destination storage pool is determined by the DO's path name. By definition, this path name is under a VOB tag; that is, the DO is in some VOB directory. The DO storage pool to which the directory element is assigned is the destination of the promotion. (On UNIX or Linux systems, some build scripts create multiple hard links, in different directories, to a derived object. In this case, the data container is promoted to the storage pool of only one of the directories.)

clearmake or omake invokes promote_server by making a request to the VersionVault master server, albd_server. promote_server runs as the owner of the view in which the data container to be copied resides (UNIX and Linux) or as the user VersionVault (Windows), which guarantees read access to the data container.

After promoting a DO, the promote_server remains active for several minutes to ensure that subsequent promotions from the same view are processed with the least overhead. During this time, the promote_server remains associated with the view from which the DO was promoted; if two users try to promote DOs from the same view, at the same time, they share (serially) the same promote_server.