persistent class Config.MapMirrors extends %Library.Persistent, Config.GenericMapMethods, Config.GenericMapProperties, %SYSTEM.Help
SQL Table Name: Config.MapMirrorsThis class allows you to activate and view Mirror definitions in the [MapMirrors.<mirror name>] section of the CPF file through programatic APIs. The properties in this section are managed via the Enterprise Management system as the information needs to be kept in sync across all of the instances which share the mirror definition. The ^MIRROR utility or the System Management Portal may be used to withdraw from a mirror in which case it will delete one of these sections.
In all of the Config methods, the CPFFile parameter defaults to the currently active CPF file. If you wish to query a different CPF file the file must be specifyied in the method call.
The Flags parameter is normally omitted; the defaults are usually sufficient for most cases.
You can use either the Get API to retrieve an array containing all of the parameters from the object or you can open an instance using the Object syntax to craete a reference variable.
; Use class methods to retrieve properties %SYS>s MirName="TEST" %SYS>s Member="TESTSERVER/DATA1" %SYS>s Status=##Class(Config.MapMirrors).Get(MirName,Member,.Properties) %SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status) %SYS>zw Properties Properties("AgentAddress")="testserver" Properties("AgentPort")=2188 Properties("AsyncMemberType")=0 Properties("ConnectsTo")="" Properties("DejournalFilter")="" Properties("ECPAddress")="testserver" ;This is the superserver address in the documentation Properties("EncryptCommunication")=0 Properties("GUID")="F23D0A92-5961-4E2A-BFE9-EF91880323F0" Properties("InstanceDirectory")="c:\intersystems\data1\" Properties("MemberType")=0 Properties("MirrorAddress")="testserver" ;This is also called the mirror private address Properties("MirrorSSPort")=1972 Properties("PreferredArbiter")="" Properties("SSLComputerName")=""
The agent can transfer journal data so a private address may be desirable here to avoid network congestion.
0 - Disaster Recovery (DR). This is a disaster recovery async member, all its mirrored databases are read-only mirrored databases.
1 - Read-Only Reporting. This is a reporting async member, all its mirrored databases could be read-only or read-write databases, the default is read-only when the database is created.
2 - Read-Write Reporting. This is a reporting async member, all its mirrored databases could be read-only or read-write databases, the default is read-write when the database is created.
This property is meaningful only for Reporting Async members.
Other mirror members may also make connections to a member's superserver address for certain control and monitoring purposes. When a member is primary, async members attempt to establish their data channel to the member using this address if the mirror private address is not accessible, which means that journal data may travel over the network via this address.
This a required field on failover members, optional on others.
0 - Encryption is not required. Outgoing connections may still be encrypted if the member we connect to requires SSL for incoming connections.
1 - SSL is used to encrypt outgoing connections. the server must have an SSL Mirror configuration or the connection will fail
2 - Encryption is required for incoming connections. The clients which connect must have an SSL Mirror configuration or the connection will fail
3 - Both 1+2: Outgoing connections are encrypted, encryption is required for incoming connections
0 - Failover member
1 - <reserved for future use>
2 - Async member (doesn't accept client connections)
(defined in %syMirror.inc as FailoverMemberType, AsyncMemberType)
Failover members are restricted in that they can only use this address for establishing the connection to receive live updates. Async members attempt to use this address to connect to the primary but fall back to the superserver address (ECPAddress property) if necessary.
This documentation refers to ths property as the Mirror Private Address.
The name must not contain a colon (':') and is converted to uppercase before saving.
Any error returned here will keep the object from being deleted.
Names - Comma separated list of MapMirror names
"*" - All records match
"String,String1" - Any records matching one of these elements
"String*" - Any record starting with "String"
"String,String1*,String2" - Any record matching one of these elements, or starting with "String1"
CPFFile - Name of the CPF file to use. A null string means use the active CPF file.
Flags - Currently ignored.
0 - Standard report list format
1 - ^CONFIG global format
2 - CPF file format format
Note: This query may change in future versions
Storage Model: Storage (Config.MapMirrors)