· Jun 29, 2022

How to pause mirroring for an async mirror reporting server

I am receiving Mirroring updates to an IRIS for Health async reporting server and need to pause the mirroring journal processing to periodically quiesce the database to rebuild cubes and custom staging tables.

What API or web service can I use to quiesce the reporting server and then later initiate catch up?



Product version: IRIS 2021.1
Discussion (2)2
Log in or sign up to continue


We are using this on an a-sync mirror member, that we want to be "behind" for any X minutes (parameter)

Here is a sample code:

s sc=1

    try {

        I ##class(%SYSTEM.Mirror).GetMemberType()'="Failover" {

            S diff=..GetDiff(debug)

            I diff < minutes {

                I $zcvt(##class(SYS.Mirror).AsyncDejournalStatus(),"U")="RUNNING" {

                    D ##class(SYS.Mirror).AsyncDejournalStop()


            } else {

                I $zcvt(##class(SYS.Mirror).AsyncDejournalStatus(),"U")'="RUNNING" {

                    D ##class(SYS.Mirror).AsyncDejournalStart()




    } catch e {

        ; any error trp you want


    Quit sc