%SYS
MirrorMember Class Reference

This class allows you to modify and view the [MirrorMember] section of the CPF file through programatic APIs. More...

Inheritance diagram for MirrorMember:
Collaboration diagram for MirrorMember:

Public Member Functions

_.Library.String GetAsyncMemberGUID ()
 Returns AsyncMemberGUID of the async member.
 

Static Public Member Functions

_.Library.Boolean AllowClearFailoverDBFlag (_.Library.String CPFFile)
 Check if this mirror member allow user to clear the FailoverDB flag in mirrored databases. More...
 
_.Library.Boolean AllowNewMirrorSet (_.Library.String CPFFile)
 Return whether the async member is allowed to add a new mirror set to be tracked.
 
_.Library.Status CheckSecurity (_.Library.Boolean enabled)
 Check the required security settings
More...
 
_.Library.Boolean IsDRMember (_.Library.String CPFFile)
 Check if this mirror member is a Disaster Recovery (DR) async member. More...
 
_.Library.Boolean IsReadOnlyReportingMember (_.Library.String CPFFile)
 Check if this mirror member is a read-only reporting async member. More...
 
_.Library.Boolean IsReadWriteReportingMember (_.Library.String CPFFile)
 Check if this mirror member is a read-write reporting async member. More...
 
_.Library.Boolean isAsyncMember (_.Library.String CPFFile)
 Returns TRUE/FALSE for whether this node is configured as an async. More...
 
- Static Public Member Functions inherited from CommonSingleMethods
_.Library.Status Get (_.Library.String Properties, _.Library.String CPFFile, _.Library.Integer Flags)
 Get a sections properties from a CPF file. More...
 
_.Library.Status GetList (_.Library.String CPFFile, _.Library.Integer Flags)
 Returns the properties from a section in a CPF file by value in $list format
More...
 
_.Library.Status Modify (_.Library.String Properties, _.Library.String CPFFile, _.Library.Integer Flags)
 Modify a sections properties in a CPF file. More...
 
_.Library.ObjectHandle Open (_.Library.String CPFFile, _.Library.Integer concurrency, _.Library.Status Status, _.Library.Integer Flags)
 Open an instance of an section object in a CPF file. More...
 

Public Attributes

 AgentAddress
   More...
 
 AsyncMemberGUID
   More...
 
 AsyncMemberType
 AsyncMemberType indicates the async member is a disaster recovery (DR), read-only reporting or read-write reporting async member. More...
 
 AsyncUseSystemPurgeInterval
 AsyncUseSystemPurgeInterval when set indicates that the async member should. More...
 
 JoinMirror
 Flag indicating whether this system processes its mirror configuration. More...
 
 SystemName
 This is the name by which the system is known in the mirror (the mirror. More...
 
 VirtualAddressInterface
 When the mirror is configured to keep a virtual ip address assigned. More...
 
- Public Attributes inherited from CommonProperties
 CPFFile
 CPF file which the object maps to. More...
 
 Comments
 Embedded comments in the CPF file. More...
 
 Flags
 Flags governing how the object is processed when Save() is called. More...
 
 Name
 Name of the object instance. More...
 

Static Public Attributes

 PROPERTIESMAYBEINCPF = None
 List of properties which may or may not be in the CPF file. More...
 
- Static Public Attributes inherited from CommonProperties
 DOMAIN = None
 This class contains properties which are included by classes which manipulate sections in the CPF file. More...
 

Detailed Description

This class allows you to modify and view the [MirrorMember] section of the CPF file through programatic 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, then specify the CPFFile 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.

EXAMPLE:

    ; Use class methods to modify properties
    SYS>s Status=##Class(Config.MirrorMember).Get(.Properties)
    SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
    SYS>zw Properties("SystemName")
    Properties("SystemName")="Mirror5"
    STS>s Properties("SystemName")="Mirror6"
    SYS>s Status=##Class(Config.MirrorMember).Modify(.Properties)
    SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
    ; Now use Objects to modify properties
    SYS>s Obj=##Class(Config.MirrorMember).Open()
    SYS>w Obj.SystemName
    Mirror6
    SYS>s Obj.SystemName="Mirror7"
    SYS>s Status=Obj.Save()
    SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
    

Member Function Documentation

◆ AllowClearFailoverDBFlag()

_.Library.Boolean AllowClearFailoverDBFlag ( _.Library.String  CPFFile)
static

Check if this mirror member allow user to clear the FailoverDB flag in mirrored databases.


Only the non-DR async member allow user to clear the FailverDB flag in mirrored databases.

◆ CheckSecurity()

_.Library.Status CheckSecurity ( _.Library.Boolean  enabled)
static

Check the required security settings

Returns $$$ERROR(reason) if we fail to look up the security setting. Otherwise returns $$$OK and sets the passed 'enabled' variable to True/False.

◆ IsDRMember()

_.Library.Boolean IsDRMember ( _.Library.String  CPFFile)
static

Check if this mirror member is a Disaster Recovery (DR) async member.


◆ IsReadOnlyReportingMember()

_.Library.Boolean IsReadOnlyReportingMember ( _.Library.String  CPFFile)
static

Check if this mirror member is a read-only reporting async member.


◆ IsReadWriteReportingMember()

_.Library.Boolean IsReadWriteReportingMember ( _.Library.String  CPFFile)
static

Check if this mirror member is a read-write reporting async member.


◆ isAsyncMember()

_.Library.Boolean isAsyncMember ( _.Library.String  CPFFile)
static

Returns TRUE/FALSE for whether this node is configured as an async.

member in the configuration.

Member Data Documentation

◆ PROPERTIESMAYBEINCPF

PROPERTIESMAYBEINCPF = None
static

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.

◆ AgentAddress

AgentAddress

 

 

◆ AsyncMemberGUID

AsyncMemberGUID

 

 

◆ AsyncMemberType

AsyncMemberType

AsyncMemberType indicates the async member is a disaster recovery (DR), read-only reporting or read-write reporting async member.


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.
 

◆ AsyncUseSystemPurgeInterval

AsyncUseSystemPurgeInterval

AsyncUseSystemPurgeInterval when set indicates that the async member should.

purge mirror journal files according to the same criteria it uses for purging local journal files (eg. after a certain number of days or a certain number of backups). When this parameter is missing, or clear, the default state, mirror journal files are purged as soon as they are no longer needed because they have been replayed to the local databases.  

◆ JoinMirror

JoinMirror

Flag indicating whether this system processes its mirror configuration.

at startup. When set to NO, the mirror configuration is ignored and the system is not considered a mirror member. This can be used if there is a problem in the configuration which prevents the system from starting or as part of removing a system from the mirror as if a system is the primary it needs to be restarted but we also need to block the system from joining the mirror when it restarts and becoming the primary again.  

◆ SystemName

SystemName

This is the name by which the system is known in the mirror (the mirror.

member name). The name is converted to uppercase before storing. The following characters are not permitted in mirror system names:
     : # , ; = ^ ~ " &ltspace&gt &lttab&gt
The following character sequences are not allowed in mirror system names:
     //  /*

Mirror system names must be unique across all mirror members as some mirror members (eg. async members) may participate in multiple mirrors and they will have the same system name in all of the mirrors.  

◆ VirtualAddressInterface

VirtualAddressInterface

When the mirror is configured to keep a virtual ip address assigned.

to the primary, this is the local interface which hosts the IP address.

Consult the documentation for the format specific to the operating system.