# See documentation regarding configurables here: # https://www.perforce.com/perforce/doc.current/manuals/cmdref/Content/CmdRef/configurables.configurables.html # Format: # Profile|Configurable|ExpectedValue|CompareStyle|Optionality|ServerIDType|SetNotes #------------------------------------------------------------------------------ # Default values. These always apply, and are combined with one user-specified # profile defined further below, e.g. 'demo' or 'prod'. #------------------------------------------------------------------------------ default|auth.id|null|Set|Required|any|EDITME_AddURLForNotes default|rpl.forward.login|1|Exact|Required|any|EDITME_AddURLForNotes default|run.users.authorize|1|Exact|Required|any|None default|server|3|AtLeast|Recommended|any|None default|server.depot.root|/p4/__SDP_INSTANCE__/depots|Exact|Required|any|None default|journalPrefix|/p4/__SDP_INSTANCE__/checkpoints/__P4SERVER__|Exact|Required|any|None default|dm.info.hide|1|Exact|Required|any|None default|monitor|1|AtLeast|Required|any|None default|net.tcpsize|null|Unset|Required|any|None default|net.autotune|1|Exact|Required|any|https://portal.perforce.com/s/article/15368 default|db.monitor.shared|4096|AtLeast|Required|any|None default|net.backlog|2048|AtLeast|Required|any|None default|lbr.bufsize|1M|AtLeast|Required|any|None default|filesys.bufsize|1M|AtLeast|Required|any|None default|server.commandlimits|2|Exact|Required|any|None default|rpl.checksum.auto|1|Exact|Required|any|None default|rpl.checksum.change|2|Exact|Required|any|None default|rpl.checksum.table|1|Exact|Required|any|None default|rpl.compress|4|Exact|Recommended|any|None default|dm.user.loginattempts|7|AtLeast|Recommended|any|None default|server.start.unlicensed|1|Exact|Recommended|any|None default|rejectList|P4EXP,version=2014.2|Contains|Recommended|any|None default|server.global.client.views|1|Exact|Recommended|any|None default|server.locks.global|1|Exact|Recommended|any|None default|proxy.monitor.level|3|AtLeast|Recommended|any|None default|dm.shelve.promote|1|Exact|Recommended|any|None default|dm.keys.hide|2|Exact|Recommended|any|None default|filetype.bypasslock|1|Exact|Recommended|any|None default|server.extensions.dir|__LOGS__/p4-extensions|Exact|Recommended|any|None client.readonly.dir|"$P4ROOT/client.readonly.dir" client.sendq.dir|"$P4ROOT/client.readonly.dir" ### default|serverlog.file.__N__|__LOGS__/errors.csv|Recommended|any|None ### default|serverlog.retain.*__N__|__KEEPLOGS__| ### default|serverlog.file.7|"$LOGS/events.csv" ### default|serverlog.retain.7|"$KEEPLOGS" ### default|serverlog.file.8|"$LOGS/integrity.csv" ### default|serverlog.retain.8|"$KEEPLOGS" ### default|serverlog.file.11|"$LOGS/triggers.csv" ### default|serverlog.retain.11|"$KEEPLOGS" # Notes on omitted settings: # db.reorg.disabled: Often 1 is most appropriate value, the P4D default. # lbr.autocompress: Often 1 is most appropriate value, the P4D default. #------------------------------------------------------------------------------ # Demo Profile Settings #------------------------------------------------------------------------------ demo|filesys.P4ROOT.min|5M|AtLeast|Recommended|any|None demo|filesys.depot.min|5M|AtLeast|Recommended|any|None demo|filesys.P4JOURNAL.min|5M|AtLeast|Recommended|any|None demo|server.maxcommands|2500|AtLeast|Required|any|None demo|net.parallel.max|10|AtLeast|Recommended|any|None demo|net.parallel.threads|4|AtLeast|Recommended|any|None demo|net.parallel.sync.svrthreads|300|NoMoreThan|Recommended|any|None # Helix Core Cloud hcc|security|4|Exact|Required|any|Standard hcc|dm.user.noautocreate|2|Exact|Recommended|any|None hcc|filesys.P4ROOT.min|5M|AtLeast|Recommended|any|None hcc|filesys.depot.min|5M|AtLeast|Recommended|any|None hcc|filesys.P4JOURNAL.min|5M|AtLeast|Exact|Recommended|any|None hcc|server.maxcommands|2500|AtLeast|Required|any|None hcc|net.parallel.max|8|AtLeast|Recommended|any|None hcc|net.parallel.threads|4|AtLeast|Recommended|any|None hcc|net.parallel.sync.svrthreads|300|NoMoreThan|Recommended|any|None # Production Commercial Profile Settings prod|security|4|AtLeast|Required|any|Standard prod|filesys.P4ROOT.min|5G|AtLeast|Recommended|any|None prod|filesys.depot.min|5G|AtLeast|Recommended|any|None prod|filesys.P4JOURNAL.min|5G|AtLeast|Recommended|any|None prod|dm.user.noautocreate|2|Exact|Recommended|any|None prod|server.maxcommands|2500|AtLeast|Required|any|None prod|auth.sso.allow.passwd|1|Exact|Recommended|any|None prod|auth.sso.nonldap|1|Exact|Recommended|any|None prod|net.parallel.max|10|AtLeast|Recommended|any|None prod|net.parallel.threads|4|AtLeast|Recommended|any|None prod|net.parallel.sync.svrthreads|3000|NoMoreThan|Recommended|any|None # Public Server Profile Settings pub|security|0|Exact|Required|any|Standard pub|filesys.P4ROOT.min|1G|AtLeast|Recommended|any|None pub|filesys.depot.min|1G|AtLeast|Recommended|any|None pub|filesys.P4JOURNAL.min|1G|AtLeast|Recommended|any|None pub|server.maxcommands|2500|AtLeast|Required|any|None pub|net.parallel.max|10|AtLeast|Recommended|any|None pub|net.parallel.threads|4|AtLeast|Recommended|any|None pub|net.parallel.sync.svrthreads|400|NoMoreThan|Recommended|any|None #------------------------------------------------------------------------------ # Profile # Each configurable and expected value is associated with a profile: # * default - This is a generally applicable default. # * prod - For commercial production Helix Core servers (closed source, secure) # * prodent - Production at enterprise scale. # * demo - For demo and evaluation servers, with no security needs. # * open - For public/open source servers, with open read access. #------------------------------------------------------------------------------ # ExpectedValue: # The expected value of the configurable. (See also: CompareStyle) # Expected values can have substitutions. Values to be substituted use a # double-underscore as a prefix and suffix, e.g. __SDP_INSTANCE__ will be # substitued with the SDP Instance Name. The follwoing substitutsions are # done: # # __SDP_INSTANCE__ SDP Instance name, e.g. '1'. # __P4ROOT__ Server root, e.g. /p4/N/root. # __P4SERVER__ SDP Instance name, e.g. 'p4_1'. # __KEEPLOGS__ KEEPLOGS setting defined in SDP shell env. # __LOGS__ Logs dir, e.g. '/p4/1/logs'. #------------------------------------------------------------------------------ # CompareStyle: # This determines how actual and expected Value are matched. # * Exact - Actual value matches expected exactly, numeric or string. # * Set - Actual value is set to anything, just not null/unset. # * Unset - Value must not be explicitly set with 'p4 configure'. # * AtLeast - Actual is as big or bigger than expected. This is a # numeric comparison. The value must be an integer or a size # e.g. 20K, 4G (ending in B, K, M, G, T, P, or E). # * NoMoreThan - Actual is as no more than expected; opposite of AtLeast. # * Contains - Actual value contains the expected value (string compare). # #------------------------------------------------------------------------------ # Optionality: # # This indicates whther the given setting is required or recommended. Values # are: # # Required - If the value is not set to the expected value, validations fail. # # Recommended - If the value is not set to the expected value, validations # succeed with a warning. #------------------------------------------------------------------------------ # ServerIDType # # This can be one of: # # * any - For the global default 'any' config. # * commit - Setting for the singular ServerID of the commit server, P4MASTER_ID # * replica - For a non-standby replia # * standby - For a standby/journalcopy replica # * edge - For an edge server #------------------------------------------------------------------------------ # SetNotes: # # This column contains a reference to info to be displayed if it is determined # that the configurable needs to be changed. For example, setting auth.id will # invalidate all tickets, and thus may require planning to roll out in an # enterprise environment. # # This is empty or has the value None for configurables that can safely be set # in real-time without further contemplation. For settings that require a # maintenance windows (due to a service restart), or possibly requre planning # and other to change, this field contains a link to a URL with details. This # is used for configurables like auth.id, security, and rpl.forward.login # that have details to be aware of when changing them.
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#10 | 30610 | C. Thomas Tyler |
New best practice configurable: Set rt.monitorfile. #review-30611 |
||
#9 | 30500 | C. Thomas Tyler |
New best practice configurable: dm.user.hideinvalid=1 #review-30501 |
||
#8 | 30443 | C. Thomas Tyler | Corrected guidance for net.autotune; it should be unset. | ||
#7 | 30283 | C. Thomas Tyler |
New best practice: Set submit.noretransfer=1. #review-30284 |
||
#6 | 30254 | C. Thomas Tyler |
ccheck.sh: Completed doc and code changes to establish 'prod' as the default profile. Now use '-p none' to use only the default profile. |
||
#5 | 30035 | C. Thomas Tyler | Corrected configurable name. | ||
#4 | 30034 | C. Thomas Tyler | Adjusted net.keepalive.interval valie. | ||
#3 | 30019 | C. Thomas Tyler |
Added net.keepalive settings to best practices. #review @robert_cowham @mwittenberg |
||
#2 | 30016 | C. Thomas Tyler | Refined configurables. | ||
#1 | 29994 | C. Thomas Tyler |
Added ccheck.sh script to compare configurables current vs. best practices, and corresponding configurbles data file. #review-29995 |