Question
· Jan 18

Question about using ZSTART, ZSTOP, ZMIRROR

I had a question about using ZSTART, ZSTOP, and ZMIRROR.

  • If we use them and it is not correct, does it mess up with any of the existing functionality?
  • So, if I create a ZSTART with a simple command of starting the %JDBC Server will that mess up anything existing in the Startup sequence?
  • Is ZSTART, ZSTOP, and ZMIRROR just an extension of the existing functionality, or does it alter how the built in functionality runs?
  • Should we tread lightly in the use of them?
Product version: IRIS 2022.1
Discussion (7)3
Log in or sign up to continue

Yes, you do have to tread lightly and program very carefully if you mess with those. Errors in them could make it impossible to start or log into IRIS. This is straight from the documentation about those routines:

Make sure that the routines are well-behaved under all possible conditions. They should be written defensively. That is, they should check to make sure that all the resources needed to complete their task are at hand and, if possible, reserved to them before computation starts. Errors which occur are reported as failures of that system function so it is important to think about the design from the viewpoint of error containment and handling. Failure to properly account for recovery in the face of missing resources or the presence of errors has varied consequences: InterSystems IRIS may fail to start; major functions such as Studio may act strangely; or more subtle and insidious consequences may occur which are not immediately detected. It is strongly recommended that these routines be carefully written and debugged under simulated conditions, and then tested under simulated environment conditions before being put into production systems.

It doesn't sound like you're trying to do anything too crazy, but do make sure you trap or catch any potential errors anyway.

Guessing the upgrade did iris start [instance] nostu to not run any user code on startup.
iris help start
                            **** iris usage ****
Syntax:
        iris start <instance name> [parameters]
Description:
        Run the instance's irisstart procedure to bring InterSystems IRIS up.
Optional parameters:
        quietly -> non-interactive, with minimal dialog
        nostu   -> don't run startup routine (^STU)
        help    -> list supported parameters
        EmergencyId=username,password -> start up in emergency mode
        Any other value is taken as a configuration file name with '.cpf' appended.
        If a configuration file is not specified, the file 'iris.cpf' is used.
Example:
        iris start mystuff quietly      <- uses file 'mystuff.cpf'
Notes:
        Some instances might not have support for a particular parameter,
        or a new parameter could have been added.  For a list of supported
        parameters for a specific instance, type:
                iris start <instance name> help