Skip to main content


persistent class Config.Startup extends %Library.Persistent, Config.CommonSingleMethods, Config.CommonProperties, %SYSTEM.Help

SQL Table Name: Config.Startup

This class allows you to modify and view the [Startup] section of the CPF file through programmatic APIs. While properties are usually modified through the System Management portal, there may be some occasion where modifying them through the API's is best for your system. In all the Config methods, if you do not specify the CPFFile parameter, the currently active CPF file is used. If you wish to modify a CPF file which is not the currently active one, specify the CPF file you wish to modify in the method call.
The Flags parameter does not normally need to be specified; the defaults are usually sufficient for most cases.
You can use either the provided API's (Get/Modify) to modify the properties by passing in the correct parameters, or use Object syntax to open and directly manipulate the config objects.


; Use class methods to modify properties
%SYS>s Status=##Class(Config.Startup).Get(.Properties)
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
%SYS>zw Properties("MaxConsoleLogSize")
%SYS>s Properties("MaxConsoleLogSize")=10
%SYS>s Status=##Class(Config.Startup).Modify(.Properties)
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
; Now use Objects to modify properties
%SYS>s Obj=##Class(Config.Startup).Open()
%SYS>w Obj.MaxConsoleLogSize
%SYS>s Obj.MaxConsoleLogSize=20
%SYS>s Status=Obj.%Save()
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)

Property Inventory

Method Inventory


parameter PROPERTIESMAYBEINCPF = EnableSharding;
List of properties which may or may not be in the CPF file.
They have a corresponding %Boolean property to determine if they are in the file or not. For example, the property "DebugFlags" has a %Boolean "DebugFlagsPresent" property associated with it.


property CallinHalt as %Boolean [ InitialExpression = 1 , Required ];
Execute the CALLIN^%ZSTOP routine entry during calling Halt.
Property methods: CallinHaltDisplayToLogical(), CallinHaltGet(), CallinHaltGetStored(), CallinHaltIsValid(), CallinHaltLogicalToDisplay(), CallinHaltLogicalToXSD(), CallinHaltNormalize(), CallinHaltSet(), CallinHaltXSDToLogical()
property CallinStart as %Boolean [ InitialExpression = 1 , Required ];
Executes the CALLIN^%ZSTART routine entry during Callin startup.
Property methods: CallinStartDisplayToLogical(), CallinStartGet(), CallinStartGetStored(), CallinStartIsValid(), CallinStartLogicalToDisplay(), CallinStartLogicalToXSD(), CallinStartNormalize(), CallinStartSet(), CallinStartXSDToLogical()
property CliSysName as %String (MAXLEN = 64, MINLEN = 0);
Name used to append to $J when Config.Miscellaneous.NodeNameInPid is set.
Property methods: CliSysNameDisplayToLogical(), CliSysNameGet(), CliSysNameGetStored(), CliSysNameIsValid(), CliSysNameLogicalToDisplay(), CliSysNameLogicalToOdbc(), CliSysNameNormalize(), CliSysNameSet()
property DBSizesAllowed as %String (MINLEN = 4) [ InitialExpression = "8192" , Required ];
Stores a list of allowed database block sizes.
Property methods: DBSizesAllowedDisplayToLogical(), DBSizesAllowedGet(), DBSizesAllowedGetStored(), DBSizesAllowedIsValid(), DBSizesAllowedLogicalToDisplay(), DBSizesAllowedLogicalToOdbc(), DBSizesAllowedNormalize(), DBSizesAllowedSet()
property DefaultPort as %Integer [ InitialExpression = 1972 , Required ];
Port for the Super Server.
Property methods: DefaultPortDisplayToLogical(), DefaultPortGet(), DefaultPortGetStored(), DefaultPortIsValid(), DefaultPortLogicalToDisplay(), DefaultPortNormalize(), DefaultPortSet(), DefaultPortXSDToLogical()
property DefaultPortBindAddress as Config.Host (MAXLEN = 256, MINLEN = 0);
IP Address Super Server will bind to.
By default, the Super Server accepts requests on all addresses, but if a DefaultPortBindAddress is specified it will accept requests only on that address. You should insure that all clients, including the CSP Gateway, are also configured to connect to the address you specify. If no address is specified, the Super Server will accept requests directed to any address on the server.
Property methods: DefaultPortBindAddressDisplayToLogical(), DefaultPortBindAddressGet(), DefaultPortBindAddressGetStored(), DefaultPortBindAddressIsValid(), DefaultPortBindAddressLogicalToDisplay(), DefaultPortBindAddressLogicalToOdbc(), DefaultPortBindAddressNormalize(), DefaultPortBindAddressSet()
property EnableVSSBackup as %Boolean [ InitialExpression = 0 , Required ];
Start the VSS Backup Daemon.
Property methods: EnableVSSBackupDisplayToLogical(), EnableVSSBackupGet(), EnableVSSBackupGetStored(), EnableVSSBackupIsValid(), EnableVSSBackupLogicalToDisplay(), EnableVSSBackupLogicalToXSD(), EnableVSSBackupNormalize(), EnableVSSBackupSet(), EnableVSSBackupXSDToLogical()
property EnsembleAutoStart as %Boolean [ InitialExpression = 0 , Required ];
Auto start the Interoperability productions.
Property methods: EnsembleAutoStartDisplayToLogical(), EnsembleAutoStartGet(), EnsembleAutoStartGetStored(), EnsembleAutoStartIsValid(), EnsembleAutoStartLogicalToDisplay(), EnsembleAutoStartLogicalToXSD(), EnsembleAutoStartNormalize(), EnsembleAutoStartSet(), EnsembleAutoStartXSDToLogical()
property ErrorPurge as %Integer (MAXVAL = 1000, MINVAL = 1) [ InitialExpression = 30 , Required ];
Number of days to store application error logs before purging them.
Property methods: ErrorPurge(), ErrorPurgeDisplayToLogical(), ErrorPurgeGet(), ErrorPurgeGetStored(), ErrorPurgeIsValid(), ErrorPurgeLogicalToDisplay(), ErrorPurgeNormalize(), ErrorPurgeSet(), ErrorPurgeXSDToLogical()
property FIPSMode as %Boolean [ InitialExpression = ..InitFIPSMode() , Required ];
Use FIPS 140-2 compliant library for database encryption.
Property methods: FIPSModeDisplayToLogical(), FIPSModeGet(), FIPSModeGetStored(), FIPSModeIsValid(), FIPSModeLogicalToDisplay(), FIPSModeLogicalToXSD(), FIPSModeNormalize(), FIPSModeSet(), FIPSModeXSDToLogical()
property IPv6 as %Boolean [ InitialExpression = 0 , Required ];
System is operating in an IPv6 network, with IPv6 addresses.
0 - IPv6 is not enabled.
1 - IPv6 is enabled.
Property methods: IPv6DisplayToLogical(), IPv6Get(), IPv6GetStored(), IPv6IsValid(), IPv6LogicalToDisplay(), IPv6LogicalToXSD(), IPv6Normalize(), IPv6Set(), IPv6XSDToLogical()
property JobHalt as %Boolean [ InitialExpression = 1 , Required ];
Execute the JOB^%ZSTOP routine entry during JOB process Halt.
Property methods: JobHaltDisplayToLogical(), JobHaltGet(), JobHaltGetStored(), JobHaltIsValid(), JobHaltLogicalToDisplay(), JobHaltLogicalToXSD(), JobHaltNormalize(), JobHaltSet(), JobHaltXSDToLogical()
property JobServers as %Integer (MAXVAL = 2000, MINVAL = 0) [ InitialExpression = 0 , Required ];
Number of job servers you want the system to start up with.
Property methods: JobServersDisplayToLogical(), JobServersGet(), JobServersGetStored(), JobServersIsValid(), JobServersLogicalToDisplay(), JobServersNormalize(), JobServersSet(), JobServersXSDToLogical()
property JobStart as %Boolean [ InitialExpression = 1 , Required ];
Execute the JOB^%ZSTART routine entry during JOB process startup.
Property methods: JobStartDisplayToLogical(), JobStartGet(), JobStartGetStored(), JobStartIsValid(), JobStartLogicalToDisplay(), JobStartLogicalToXSD(), JobStartNormalize(), JobStartSet(), JobStartXSDToLogical()
property LicenseID as %String (MAXLEN = 32);
LicenseID is used to request the license key from the License Server at startup, if there is no local key file.
Property methods: LicenseIDDisplayToLogical(), LicenseIDGet(), LicenseIDGetStored(), LicenseIDIsValid(), LicenseIDLogicalToDisplay(), LicenseIDLogicalToOdbc(), LicenseIDNormalize(), LicenseIDSet()
property MaxConsoleLogSize as %Integer (MAXVAL = 500, MINVAL = 1) [ InitialExpression = 5 , Required ];
Maximum size in megabytes of the messages.log after which it will be automatically switched.
Property methods: MaxConsoleLogSizeDisplayToLogical(), MaxConsoleLogSizeGet(), MaxConsoleLogSizeGetStored(), MaxConsoleLogSizeIsValid(), MaxConsoleLogSizeLogicalToDisplay(), MaxConsoleLogSizeNormalize(), MaxConsoleLogSizeSet(), MaxConsoleLogSizeXSDToLogical()
property MaxIRISTempSizeAtStart as %Integer (MAXVAL = 1000000, MINVAL = 0) [ InitialExpression = 0 , Required ];
Maximum size in megabytes the IRISTEMP database will be when the system is restarted.
When the system restarts, the IRISTEMP database will be truncated to this size. If 0, the IRISTEMP database will not be truncated.
Property methods: MaxIRISTempSizeAtStartDisplayToLogical(), MaxIRISTempSizeAtStartGet(), MaxIRISTempSizeAtStartGetStored(), MaxIRISTempSizeAtStartIsValid(), MaxIRISTempSizeAtStartLogicalToDisplay(), MaxIRISTempSizeAtStartNormalize(), MaxIRISTempSizeAtStartSet(), MaxIRISTempSizeAtStartXSDToLogical()
property PasswordHash as %String (MAXLEN = 10000);
Set the IRIS password using a cryptographic hash and salt.
The format of this field is: hash,salt,workFactor,algorithm
  • Hash: Hex-encoded output of PBKDF2 function. Must be correct number of bits for Algorithm.
  • Salt: Hex-encoded salt input to PBKDF2. Must be correct number of bits for Algorithm.
  • WorkFactor: WorkFactor input for PBKDF2.
  • Algorithm: A valid Security.Datatype.PBKDF2Alg value.
Property methods: PasswordHashDisplayToLogical(), PasswordHashGet(), PasswordHashGetStored(), PasswordHashIsValid(), PasswordHashLogicalToDisplay(), PasswordHashLogicalToOdbc(), PasswordHashNormalize(), PasswordHashSet()
property ProcessHalt as %Boolean [ InitialExpression = 1 , Required ];
Execute the LOGIN^%ZSTOP routine entry during terminal user Halt.
Property methods: ProcessHaltDisplayToLogical(), ProcessHaltGet(), ProcessHaltGetStored(), ProcessHaltIsValid(), ProcessHaltLogicalToDisplay(), ProcessHaltLogicalToXSD(), ProcessHaltNormalize(), ProcessHaltSet(), ProcessHaltXSDToLogical()
property ProcessStart as %Boolean [ InitialExpression = 1 , Required ];
Execute the LOGIN^%ZSTART routine entry during terminal user startup.
Property methods: ProcessStartDisplayToLogical(), ProcessStartGet(), ProcessStartGetStored(), ProcessStartIsValid(), ProcessStartLogicalToDisplay(), ProcessStartLogicalToXSD(), ProcessStartNormalize(), ProcessStartSet(), ProcessStartXSDToLogical()
property ShutdownTimeout as %Integer (MAXVAL = 100000, MINVAL = 120) [ InitialExpression = 300 , Required ];
Enter the time, in seconds, InterSystems IRIS should wait for shutdown to complete normally before timing out and forcing a shutdown.
Property methods: ShutdownTimeoutDisplayToLogical(), ShutdownTimeoutGet(), ShutdownTimeoutGetStored(), ShutdownTimeoutIsValid(), ShutdownTimeoutLogicalToDisplay(), ShutdownTimeoutNormalize(), ShutdownTimeoutSet(), ShutdownTimeoutXSDToLogical()
property SystemHalt as %Boolean [ InitialExpression = 1 , Required ];
Execute the SYSTEM^%ZSTOP routine entry during system shutdown.
Property methods: SystemHaltDisplayToLogical(), SystemHaltGet(), SystemHaltGetStored(), SystemHaltIsValid(), SystemHaltLogicalToDisplay(), SystemHaltLogicalToXSD(), SystemHaltNormalize(), SystemHaltSet(), SystemHaltXSDToLogical()
property SystemMode as %String (MAXLEN = 32);
The SystemMode is displayed in the title of the Management Portal web page. Currently, SystemMode string values recognized by the Management Portal include:
  • LIVE
  • TEST
Property methods: SystemModeDisplayToLogical(), SystemModeGet(), SystemModeGetStored(), SystemModeIsValid(), SystemModeLogicalToDisplay(), SystemModeLogicalToOdbc(), SystemModeNormalize(), SystemModeSet()
property SystemStart as %Boolean [ InitialExpression = 1 , Required ];
Executes the SYSTEM^%ZSTART routine entry during system startup.
Property methods: SystemStartDisplayToLogical(), SystemStartGet(), SystemStartGetStored(), SystemStartIsValid(), SystemStartLogicalToDisplay(), SystemStartLogicalToXSD(), SystemStartNormalize(), SystemStartSet(), SystemStartXSDToLogical()
property TempDirectory as %SysPath [ InitialExpression = "Temp" ];
Directory for temporary files.
Property methods: TempDirectoryDisplayToLogical(), TempDirectoryGet(), TempDirectoryGetStored(), TempDirectoryIsValid(), TempDirectoryLogicalToDisplay(), TempDirectoryLogicalToOdbc(), TempDirectoryNormalize(), TempDirectorySet()
property TerminalPrompt as %String [ InitialExpression = "8,2" , Required ];
Set the format of the terminal prompt.
This is a comma separated string of values which set the default terminal prompt for the system.
0 - Use only ">" for the prompt.
1 - Host name, also known as the current system name. The name assigned to your computer. For example, LABLAPTOP>. This is the same for all of your terminal processes.
2 - Namespace name. For example, %SYS>. The current namespace name is contained in the $NAMESPACE special variable. It can be an explicit namespace name or an implied namespace name.
3 - Config name. The name of your system installation. For example, DEVELOPMENT>. This is the same for all of your terminal processes.
4 - Current time, expressed as local time in 24-hour format with whole seconds. For example, 15:59:36>. This is the static time value for when the prompt was returned. This value changes for each prompt.
5 - pid. The Process ID for your terminal. For example, 2336>. This is different for each terminal process. This value can also be returned from the $JOB special variable.
6 - Username. For example, fred>. This is the same for all of your terminal processes.
7 - Elapsed time executing the last command, in seconds.milliseconds. For example, .000495>. Leading and trailing zeros are suppressed. This changes for each prompt.
8 - Transaction Level. For example, TL1>.

The order of the values in the string determines the order the values appear in the prompt. For example TerminalPrompt="2,1" will give you a terminal prompt of "%SYS:HostName>"
Property methods: TerminalPromptDisplayToLogical(), TerminalPromptGet(), TerminalPromptGetStored(), TerminalPromptIsValid(), TerminalPromptLogicalToDisplay(), TerminalPromptLogicalToOdbc(), TerminalPromptNormalize(), TerminalPromptSet()
property WebServer as %Boolean [ InitialExpression = $$PlatformId^%SYS.LICENSE()=66 , Required ];
Start the private WebServer.
Property methods: WebServerDisplayToLogical(), WebServerGet(), WebServerGetStored(), WebServerIsValid(), WebServerLogicalToDisplay(), WebServerLogicalToXSD(), WebServerNormalize(), WebServerSet(), WebServerXSDToLogical()
property WebServerName as %String;
An optional setting to restrict the DNS Name / IP Address for which the Private Web Server will accept incoming connections. For VMS, this is the IP address of the node where the webserver is running.
Property methods: WebServerNameDisplayToLogical(), WebServerNameGet(), WebServerNameGetStored(), WebServerNameIsValid(), WebServerNameLogicalToDisplay(), WebServerNameLogicalToOdbc(), WebServerNameNormalize(), WebServerNameSet()
property WebServerPort as %Integer [ InitialExpression = 52773 , Required ];
Private or external WebServer port.
Property methods: WebServerPortDisplayToLogical(), WebServerPortGet(), WebServerPortGetStored(), WebServerPortIsValid(), WebServerPortLogicalToDisplay(), WebServerPortNormalize(), WebServerPortSet(), WebServerPortXSDToLogical()
property WebServerProtocol as %String (VALUELIST = ",http,https") [ InitialExpression = "http" ];
Protocol used by WebServer.
Returned by %Studio.General GetWebServerPort().
If empty, "http" is used unless WebServerPort is 443.
Property methods: WebServerProtocolDisplayToLogical(), WebServerProtocolGet(), WebServerProtocolGetStored(), WebServerProtocolIsValid(), WebServerProtocolLogicalToDisplay(), WebServerProtocolLogicalToOdbc(), WebServerProtocolNormalize(), WebServerProtocolSet()
property WebServerSSLConfiguration as %String (MAXLEN = 64);
Name of the SSL configuration used for creating CSP sessions for web pages opened by IDEs.
Property methods: WebServerSSLConfigurationDisplayToLogical(), WebServerSSLConfigurationGet(), WebServerSSLConfigurationGetStored(), WebServerSSLConfigurationIsValid(), WebServerSSLConfigurationLogicalToDisplay(), WebServerSSLConfigurationLogicalToOdbc(), WebServerSSLConfigurationNormalize(), WebServerSSLConfigurationSet()
property WebServerURLPrefix as %SysPath;
URL prefix.
Property methods: WebServerURLPrefixDisplayToLogical(), WebServerURLPrefixGet(), WebServerURLPrefixGetStored(), WebServerURLPrefixIsValid(), WebServerURLPrefixLogicalToDisplay(), WebServerURLPrefixLogicalToOdbc(), WebServerURLPrefixNormalize(), WebServerURLPrefixSet()
property ZSTU as %Boolean [ InitialExpression = 1 , Required ];
Run the user defined startup from the ZSTU routine at system startup.
Property methods: ZSTUDisplayToLogical(), ZSTUGet(), ZSTUGetStored(), ZSTUIsValid(), ZSTULogicalToDisplay(), ZSTULogicalToXSD(), ZSTUNormalize(), ZSTUSet(), ZSTUXSDToLogical()


classmethod CheckWebServerStatus(Delay As %Integer = 0, TCPPort As %Integer = 0) as %Status
Request a test page (ping) from the private webserver.

This is valid only for Windows and Unix. If run on VMS, or the web server is configured to not start, it always returns success.
Delay - Number of seconds to wait before making request.
classmethod InitFIPSMode() as %Boolean
get the initial FIPSMode value from OS setup.
classmethod MoveConsoleLog(ConsoleLog As %String, usersize As %Integer)
Rename console log file to a new file with a '.old' suffix This is separated from SwitchConsoleLog() so it can also be used by the System Monitor No return status, errors are just written to log file
classmethod RestartWebServer() as %Status
Restart the private webserver.
classmethod SetTerminalPrompt() as %Status
Set the terminal prompt to the system default.
classmethod StopWebServer(Restart As %Integer = 0) as %Status
Restart the private webserver.
classmethod SwitchConsoleLog() as %Status
Switch the messages.log file if it is larger than the max size defined.
On a MultiValue system, it will also switch the mv.log file if it grows too large.


index (CPFNameSectionHeaderName on CPFName,SectionHeader,Name) [IdKey, Type = key, Unique];
Index methods: CPFNameSectionHeaderNameCheck(), CPFNameSectionHeaderNameDelete(), CPFNameSectionHeaderNameExists(), CPFNameSectionHeaderNameOpen(), CPFNameSectionHeaderNameSQLCheckUnique(), CPFNameSectionHeaderNameSQLExists(), CPFNameSectionHeaderNameSQLFindPKeyByConstraint(), CPFNameSectionHeaderNameSQLFindRowIDByConstraint()

Inherited Members

Inherited Properties

Inherited Methods


Storage Model: Storage (Config.Startup)

FeedbackOpens in a new tab