p4 unload

Unloads a workspace, label, or task stream to the unload depot or to a flat file.

Syntax

p4 [g-opts] unload [-f -L -p -z] [-c client | -l label | -s stream] [-o localFile]
p4 [g-opts] unload [-f -L -z] [-a | -al | -ac] [-d date | -u user]

Description

There are two main uses for the p4 unload command:

Use the -c and -l options to unload a specific client workspace or label. By default, users can only unload their own workspaces or labels; administrators can use the -f option to unload workspaces and labels owned by other users.

You do not need to unload a workspace in preparation for moving it from one edge server to another; running the p4 reload command automatically unloads the specified workspace before reloading it into a new edge server.

Use the -a, -al, or -ac options to indicate that all specified labels and/or client workspaces are to be unloaded. You cannot use these options if you are also using the -o option.

Use the -d date and/or -u user to restrict the unloading operation to labels and/or workspaces older than a specific date, owned by a specific user, or both.

Use the -L option to unload locked workspaces and/or labels. By default, only unlocked labels or workspaces are unloaded.

The access date for a workspace is updated whenever the workspace is used by a command that directly references the workspace. Similarly, the access date for a label is updated when the label is used by a command which directly references that label. The access date for a workspace is also updated when the workspace is used in a revision specifier of the form @workspace, and the access date for a label is updated when the label is used in a revision specifier of the form @labelname.

By default, data in the unload depot is uncompressed. Use -z to store it in compressed form; unloaded metadata is often highly compressible, particularly in continuous build environments characterized by millions of build-associated workspaces labels that are used to perform a single build and then rarely, if ever, accessed again.

Options

-a

Unload all applicable client workspaces and labels; requires -d, -u, or both -d and -u options. This option does not affect task streams.

-ac

Unload client workspaces; requires -d, -u, or both -d and -u options.

-al

Unload labels; requires -d, -u, or both -d and -u options.

-c client

Unload the specified client workspace’s metadata from db.have (and related tables) and store it in the unload depot.

-d date

Unload metadata older than the specified date.

-f

Force option; administrators can unload workspaces, labels, and task streams owned by other users.

-l label

Unload the specified label from db.label (and related tables) and store it in the unload depot.

-L

Unload a locked workspace, label, or task stream.

-o outputFile

Unload metadata to a file rather than to the unload depot. Note however that an unload depot must exist for this option to work. This is because the data is first placed in the unload depot and then moved to the output file you specify.

Normal users can only unload objects in their own clients. An administrator can use this option to unload an object owned by other users.

-p

Promote any non-promoted shelves belonging to the specified client that is being unloaded. The shelf is promoted to the commit server where it can be accessed by other edge servers.

-s stream

Unload the specified task stream. (the stream must be of type task)

-u user

Unload metadata owned by the specified user.

-z

Store the unloaded workspace, label, or task stream in compressed format.

g-opts

See Global Options.

Usage Notes

Can File Arguments Use Revision Specifier? Can File Arguments Use Revision Range? Minimal Access Level Required

No

No

write
admin

Related Commands

To reload data from the unload depot.

p4 reload