Centralized changelist server (P4CHANGE)

By default, Helix Servers do not coordinate the numbering of changelists. Each Helix Core Server numbers its changelists independently. If you are running multiple servers, you can configure your servers to refer to a centralized changelist server from which to obtain changelist numbers. Doing so ensures that changelist numbers are unique across your organization, regardless of the server to which they are submitted. Any number of servers can refer to a centralized changelist server.

Prerequisite: All outer servers must be at the same (or newer) release level as the central changelist server.

To configure Helix Server to use a centralized changelist server, set P4CHANGE before starting the second server, or specify it on the p4d command line with the -g option:

$ p4d -g central:1666 -p 1999

In this example, the outer server is configured to use a centralized changelist server named central. When a user creates a pending numbered changelist or submits a changelist, the outer server contacts the centralized changelist server to obtain a changelist number.

This configuration has no effect on the output of the p4 changes command. The p4 changes command lists only changelists from the currently connected server, regardless of whether it generates its own changelist numbers or relies on a centralized changelist server.

If your server is making use of a centralized changelist server, the following line appears in the output of p4 info:

...
Changelist Server: [protocol:]host:port

Where [protocol:]host:port refers to the protocol, host, and port number of the centralized changelist server.

Note

On Windows, configure the outer server with p4 set -S as follows:

C:\> p4 set -S "Outer Server" P4CHANGE=central:1666
C:\> p4 set -S "Outer Server" P4PORT=1999

Remote user or service user

If a service user is configured, that service user is used to contact the centralized change server and obtain the change number. If not, the built-in remote user is used. See Example security configuration with remote or service user.