Skip to main content

SYS.ICM

Methods intended for invocation by the InterSystems Cloud Manager

Property Inventory

Method Inventory

Properties

property ArbiterURL as %String (MAXLEN = 256);
When configuring a mirror using ShardMirrorRole, this field can be used to specify an Arbiter.
The format of this field is host:port
Property methods: ArbiterURLDisplayToLogical(), ArbiterURLGet(), ArbiterURLIsValid(), ArbiterURLLogicalToDisplay(), ArbiterURLLogicalToOdbc(), ArbiterURLNormalize(), ArbiterURLSet()
property ClusterURL as %String (MAXLEN = 256);
In node-level architecture, specifies the location of the initial data node. This field should be populated for all values of Role other than NODE1.
The format of this field is: IRIS://host:port/namespace
Property methods: ClusterURLDisplayToLogical(), ClusterURLGet(), ClusterURLIsValid(), ClusterURLLogicalToDisplay(), ClusterURLLogicalToOdbc(), ClusterURLNormalize(), ClusterURLSet()
property Map as %String (MAXLEN = 256) [ InitialExpression = "primary,backup" ];
Map used to assign members of a mirror set. Requires that nodes be named in a manner consistent with property Regexp, are ascending, and contiguous. Format is a comma-separated list of values "primary", "backup", "drasync"/"rorasync"/"rwrasync"
  • May contain only one "primary" and "backup"
  • May contain multiple "*async" (up to the current maximum of fourteen)
Property methods: MapDisplayToLogical(), MapGet(), MapIsValid(), MapLogicalToDisplay(), MapLogicalToOdbc(), MapNormalize(), MapSet()
property MasterRegexp as %String (MAXLEN = 16) [ InitialExpression = "-0$" ];
Regular expression used to determine node type when Role is AUTO. If the hostname matches this expression, role will be NODE1, otherwise DATA. The default regular expression assumes that the hostname for the NODE1 node ends in "-0":
    iris-data-0      // NODE1
    iris-data-1      // DATA
    . . .
    iris-data-N      // DATA
However, suppose your hostname convention was the following:
    iris-data-0-0      // Shard 0 primary
    iris-data-0-1      // Shard 0 backup
    iris-data-1-0      // Shard 1 primary
    iris-data-1-1      // Shard 1 backup
    . . .
    iris-data-N-0      // Shard N primary
    iris-data-N-1      // Shard N backup
In this case, we choose a value for MasterRegexp that matches the first node only: "-0-0$"
Property methods: MasterRegexpDisplayToLogical(), MasterRegexpGet(), MasterRegexpIsValid(), MasterRegexpLogicalToDisplay(), MasterRegexpLogicalToOdbc(), MasterRegexpNormalize(), MasterRegexpSet()
property Member as %String (MAXLEN = 7);
Make this node part of a mirror:
  • primary: This node will be the primary failover member
  • backup: This node will be the backup failover member
  • drasync This node will be a DR async member
  • auto: Automatic failover member selection based on whether the hostname contains an even or odd number after the final dash. Example:
      Hostname Mirror Member
      iris-data-0 primary
      iris-data-1 backup
    Note that these are only initial designations, and that failover may occur at any time.
    Property methods: MemberDisplayToLogical(), MemberGet(), MemberIsValid(), MemberLogicalToDisplay(), MemberLogicalToOdbc(), MemberNormalize(), MemberSet()
property Name as %String (MAXLEN = 50);
Name is the name of the mirror set to be created. This name is converted to uppercase before storing. Only alphanumeric characters are allowed to be in the mirror set name. This name can not be a null string.
Property methods: NameDisplayToLogical(), NameGet(), NameIsValid(), NameLogicalToDisplay(), NameLogicalToOdbc(), NameNormalize(), NameSet()
property Ordinal as %Integer [ InitialExpression = 0 ];
Allow proper indexing into ConfigMirror property Map when hostnames are offset from zero.

Example 1 - hostnames are zero-based

Hostname is sample-data-1

ConfigMirror properties:

    Map="primary,backup,drasync"
    Member=auto
  • Host index: 1
  • Member type: Map[1] = "backup"
Example 2 - hostnames start at 100

Hostname is sample-data-102

ConfigMirror properties:

    Map="drasync,rwrasync,rorasync"
    Member=auto
    Ordinal=100
  • Host index: 102 - Ordinal = 2
  • Member type: Map[2] = "rorasync"
Property methods: OrdinalDisplayToLogical(), OrdinalGet(), OrdinalIsValid(), OrdinalLogicalToDisplay(), OrdinalNormalize(), OrdinalSet()
property Primary as %String (MAXLEN = 256);
Specifies the host or IP of the initial mirror primary. This parameter is required for any non-empty value of parameter Member other than "primary". If auto is provided, the primary is determined based on whether the hostname contains an even or odd number after the final dash:
  • Even number: Current node is the primary
  • Odd number: Previous ordinal hostname is the primary.
Example:
    Hostname Mirror Primary
    iris-data-0 iris-data-0
    iris-data-1 iris-data-0
Property methods: PrimaryDisplayToLogical(), PrimaryGet(), PrimaryIsValid(), PrimaryLogicalToDisplay(), PrimaryLogicalToOdbc(), PrimaryNormalize(), PrimarySet()
property Regexp as %String (MAXLEN = 16) [ InitialExpression = "-[0-9]+$" ];
Regular expression used to make sure that hostnames conform to a regular numbering scheme, which is a prerequisite for using Role and Member in automatic mode. The default assumes a scheme such as the following:
    iris-data-0
    iris-data-1
    . . .
    iris-data-N
Property methods: RegexpDisplayToLogical(), RegexpGet(), RegexpIsValid(), RegexpLogicalToDisplay(), RegexpLogicalToOdbc(), RegexpNormalize(), RegexpSet()
property Role as %String (MAXLEN = 7);
Specify the role of this IRIS instance in nod-level architecture:
  • NODE1: This is the initial data node; if mirrored, set on primary failover member only
  • DATA: For all data nodes other than NODE1
  • AUTO: Automatically determine role by comparing hostname with MasterRegexp:
    • Match: NODE1
    • Non-match: DATA
  • COMPUTE: This will be a compute node
For all roles other than NODE1, requires that ClusterURL be provided.
Property methods: RoleDisplayToLogical(), RoleGet(), RoleIsValid(), RoleLogicalToDisplay(), RoleLogicalToOdbc(), RoleNormalize(), RoleSet()
property SSLDir as %String (MAXLEN = 256);
Path to a directory containing the following three files:
  • CAFile.pem - Certificate Authority file
  • CertificateFile.pem - Server Certificate file
  • PrivateKeyFile.pem - Server Key file
Property methods: SSLDirDisplayToLogical(), SSLDirGet(), SSLDirIsValid(), SSLDirLogicalToDisplay(), SSLDirLogicalToOdbc(), SSLDirNormalize(), SSLDirSet()

Methods

classmethod FlushToDisk()
Borrowed from MIRRORMGR.mac: Make sure the write daemon has written the new member into the disk so the remote node could ask agent job to get it for member validation.
FeedbackOpens in a new tab