High Availability and Replication Systems

FAQ: CoolSpools and HA/DR Replication

We're using a High Availability system that replicates our objects and data to a backup system. What do I have to do in relation to CoolSpools etc?

Software Replication

If you're using a Software Replication solution such as MaxAva *NOMAX, iCluster or MIMIX to replicate your objects and data from your live system to a backup system, please take note of the following points in relation to CoolSpools V7 and earlier versions of our software.

We cannot specify the exact configuration requirements for your H.A. system for the following reasons:

  1. This will depend on your company or organization's specific replication needs
  2. This will vary depending on the product being used and its capabilities

Below are some general pointers, which should guide you in the configuration requirements when read alongside your H.A. product's documentation.

CoolSpools is a licensed product, so it should be installed independently to both your production and backup servers prior to setup of mirroring.  You cannot rely on mirroring of the CoolSpools library from a production server to install CoolSpools to your HA/DR server, as this will result in an unusable copy of CoolSpools.

Licence keys

CoolSpools license keys are not affected by replication as they are managed by the IBM License Management system outside of the CoolSpools product library.

However, support keys are stored in a data area in the CoolSpools product library. The data area is COOLSPV6R1 in library COOLSPV6R1 or CP_PRDINFO in library COOLSPV7R1, and the object should be excluded from replication.

See this link if you are unclear of the difference between a license key and a support key

Objects that should not be replicated

The table below lists objects that should be excluded from replication

Data By "Data", we mean the contents of database files and data areas. The table below lists files and data areas that you may wish to replicate. The table indicates the nature of the data and in particular how frequently it is updated. You should decide your replication strategy in relation to each object listed here based on its data type and volatility. Data types are defined as follows: Data objects that form part of our software can be classified as follows: Non-data ObjectsBy "Non-data objects", we mean objects such as:

  • programs (object type *PGM)
  • service programs (*SRVPGM)
  • display files (object type *FILE attribute DSPF)
  • printer files (object type *FILE attribute PRTF)
  • commands (*CMD)
  • panel groups (*PNLGRP)
  • message files (*MSGF)
  • user spaces (*USRSPC). These are only used by CoolSpools for static information or (in the case of those created in QTEMP) for temporary information which does not need to be replicated.
  • workstation customization objects (*WSCST)
  • job descriptions (*JOBD)
  • job queues (*JOBQ)
  • subsystems descriptions (*SBSD)
  • menus (*MENU)

These objects change relatively infrequently, typically only when a fix pack (PTF) or a new release is installed. In relation to objects of this type, you have two main choices so far as H.A./replication systems are concerned. Each choice has advantages and disadvantages.

  • Install fixes (PTFs) on your live system only, rely on your H.A. software to replicate object changes

    This approach has the advantage of simplicity, in that you only need to install fix packs on the one system.

    However, this approach also has the significant disadvantage that OS/400 (IBM i) on the target system will not be aware that the fix (PTF) has been installed. This is because our fix packs are packaged as OS/400 PTFs and OS/400 tracks what PTFs have been installed. The H.A. software will not update OS/400's internal tables correctly to indicate that the PTF has been installed. This means that DSPPTF on the target system will display incorrect information and any attempt to install a fix pack on that system subsequently may fail.

  • Install fixes (PTFs) on both systems and do not replicate object changes

    This approach has the disadvantage that it is more complex, as you need to be sure to install fix packs on both systems to keep objects in sync, but has the advantage that both systems will correctly indicate the PTF level of the software when you run DSPPTF.

    On balance, this is the approach we recommend.

Other itemsYou should be aware that CoolSpools V7 and earlier versions of our software use two other features of OS/400 (IBM i) which will probably not be replicated by your H.A. Software but which have a significant bearing on the operation of the system.

  • Registered functions

    Registered functions are a feature of OS/400 (IBM i) which enable applications to control access to system functions in a similar way to object-level security. We use registered functions to allow users to manage access to items such as:

    • Spool Admin (CoolTools) standard and user defined options
    • Spool Admin features such as the ability to run commands at the command line in WRKSPLFPDM
    • Spool Converter report definitions and report maps
    • Database maps

    See these InfoCenter articles for further details of registered functions as a feature of OS/400 (IBM i):

    So far as we are aware, registered functions are not replicated by any H.A. system and they are also not saved by IBM commands such as SAVSYS, SAVSECDTA or SAVE menu option 21.

    For this reason, CoolSpools V6 & V7 *BASE and CoolTools V2 include commands called SAVREGFNC (Save Registered Functions) and RSTREGFNC (Restore Registered Functions) which are intended to allow you to take a snapshot of the registered functions defined on your system and user authorities to those functions. The information is saved into a stream file. This stream file can be used to restore those registered functions and user authorities to another partition or system.

    It is recommended that you run SAVREGFNC regularly (and especially after changing registered function settings) to ensure that your registered functions and associated user authorities can be restored in the event of a system failure or duplicated to a backup system in the event of a failure.

  • Environment variables

    Environment variables are a feature of OS/400 (IBM i) which provide a simple and convenient way of defining items of information at either a system- or job-level that applications can use to control aspects of processing. earlier software versions use environment variables to define things such as:

    • Spool Admin (CoolTools) standard and user defined options
    • Spool Admin features such as the ability to run commands at the command line in WRKSPLFPDM
    • Spool Converter report definitions and report maps
    • Database maps

    A full set of environment variables used by CoolSpools V6 & V7 is available in the Programmer's Guide.

    See this InfoCenter article for further details of environment variables as a feature of OS/400 (IBM i):

    So far as we are aware, environment variables are not replicated by any H.A. system and they are also not saved by IBM commands such as SAVSYS or SAVE menu option 21.

    Although we do not provide a SAVENVVAR (Save Environment Variables) or RSTENVVAR (Restore Environment Variables) command as part of our licensed programs, we can provide such commands on request on an "as-is" unsupported basis. These commands work in a similar way to SAVREGFNC and RSTREGFNC in that they save system-level environment variable settings into a stream file. This stream file can be used to restore those system-level environment variable settings to another partition or system.

Objects that should not be replicated
Object name Object type Product or Option Description
COOLSPV6R1 [CP_PRDINFO] *DTAARA CoolSpools V6 [V7] Product data area containing product status information and support keys etc.
CPV6R1BASE [CPV7R1BASE] *DTAARA CoolSpools V6 [V7] Base Option Product option data area containing option status information
CPV6R1OPT1 [CPV7R1OPT1] *DTAARA CoolSpools V6 [V7] Option 1 Product option data area containing option status information
CPV6R1OPT2 [CPV7R1OPT2] *DTAARA CoolSpools V6 [V7] Option 2 Product option data area containing option status information
CPV6R1OPT3 [CPV7R1OPT3] *DTAARA CoolSpools V6 [V7] Option 3 Product option data area containing option status information
CPV6R1OPT4 [CPV7R1OPT4] *DTAARA CoolSpools V6 [V7] Option 4 Product option data area containing option status information
CPV6R1OPT5 [CPV7R1OPT5] *DTAARA CoolSpools V6 [V7] Option 5 Product option data area containing option status information
Any object with a name starting QPZA* or QPZR* Any All These are previous and new versions of objects created as part of the PTF installation process. They should not be replicated. They are not used. For Version 6 and 7, they should be managed using the fix pack commands LODFIX, APYFIX etc: LODFIX will install the new versions of objects; APYFIX *TEMP will put the new version live; APYFIX *PERM will delete the old version.
Data Type Definitions
Lookup file Data is accessed read-only to drive system processes and cannot be user maintained. It changes only when a PTF is applied.
Definition file Data is primarily accessed read-only to drive system processes but is user maintainable.
Control file A small quantity of heavily updated data (e.g. next email number, next transaction number etc.)
Log file Data is for audit purposes only and does not drive subsequent processing.
Template file The file is used only for taking copies into QTEMP as temporary work files
Transaction file The file contains data required to process transactions and is heavily updated by the system.
Data Objects - Eligible for Replication
Object name Object type Product or Option Description Data type Modified by Volatility
AR_CCSIDS *FILE CoolSpools V6 & V7
CoolSpools PLUS
CoolSpools
Slipstream
Communiqué
CCSID definitions Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
AR_NUMBER *FILE CoolSpools V6 & V7 *BASE
CoolSpools PLUS
Slipstream
Communiqué
Next number file Control file System Heavily updated
AR_STLDFN *FILE CoolSpools V6 & V7 *BASE Style definitions Definition file User maintainable Low (when changed by a user)
AR_TRCDTA *FILE CoolSpools V6 & V7 *BASE Trace data Log file System Heavy when used, but rarely used (only when diagnostic trace activated)
CM_ADRDIR *FILE CoolSpools V6 & V7 Email
Communique
Email Address Directories Definition file User maintainable Low (when changed by a user)
CM_ADRLST *FILE CoolSpools V6 & V7 Email
Communique
Email Address Lists Definition file User maintainable Low (when changed by a user)
CM_DIRENT *FILE CoolSpools V6 & V7 Email
Communique
Email Address Directory Entries Definition file User maintainable Low (when changed by a user)
CM_EMLACT *FILE CoolSpools V6 & V7 Email
Communique
Email Accounts Definition file User maintainable Not currently used
CM_ERRATC *FILE CoolSpools V6 & V7 Email
Communique
Failed Email Message Attachments Log file System Low (per failed email)
CM_ERRLOG *FILE CoolSpools V6 & V7 Email
Communique
Failed Email Log Log file System Low (per failed email)
CM_ERRRCP *FILE CoolSpools V6 & V7 Email
Communique
Failed Email Message recipients Log file System Low (per failed email)
CM_LSTENT *FILE CoolSpools V6 & V7 Email
Communique
Email Address List Entries Definition file User maintainable Low (when changed by a user)
CM_MAILID *FILE CoolSpools V6 & V7 Email
Communique
Last email id Control file System High (per email)
CM_MSGATC *FILE CoolSpools V6 & V7 Email
Communique
Email Message Attachments Log file System High (per email)
CM_MSGLOG *FILE CoolSpools V6 & V7 Email
Communique
Email Message Log Log file System High (per email)
CM_MSGRCP *FILE CoolSpools V6 & V7 Email
Communique
Email Message recipients Log file System High (per email)
CM_NUMBER *FILE CoolSpools V6 & V7 Email
CoolSpools PLUS
Communiqué
Next number file Control file System Heavily updated
CM_RCVMSG *FILE CoolSpools V6 & V7 Email
Communique
Received Email Messages Transaction file System Currently unused
CM_RCVPRT *FILE CoolSpools V6 & V7 Email
Communique
Received Email Part Transaction file System Currently unused
CM_RCVRCP *FILE CoolSpools V6 & V7 Email
Communique
Received Email Recipient Transaction file System Currently unused
CM_USRDFT *FILE CoolSpools V6 & V7 Email
Communique
User Defaults Definition file System Currently unused
CM_SVRATC *FILE CoolSpools V6 & V7 Email SMTP Message Email Attachments Log file System High (per email)
CM_SVRATR *FILE CoolSpools V6 & V7 Email SMTP Server Attributes Definition file User maintainable Low (when changed by a user)
CM_SVRCTL *FILE CoolSpools V6 & V7 Email SMTP Server Job Control Log file System High (per email)
CM_SVRLOG *FILE CoolSpools V6 & V7 Email SMTP Server Log Log file System High (per email)
CM_SVRMSG *FILE CoolSpools V6 & V7 Email SMTP Server Emails Log file System High (per email)
CM_SVRRCP *FILE CoolSpools V6 & V7 Email SMTP Server Email Recipients Log file System High (per email)
CS_DBFFLD *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Spooled File to Database Map Fields Definition File User maintainable Low (when changed by a user)
CS_DBFMAP *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Spooled File to Database Maps Definition File User maintainable Low (when changed by a user)
CS_FNTCTL *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Font Control File Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_FNTDTA *FILE CoolSpools PLUS
CoolSpools V5
Font Data Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_FNTGLP *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Font Glyphs Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_FNTKEY *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Font Key File Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_FNTMET *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Font Metrics Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_FNTNAM *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Font Names Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_FNTTBL *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Font Table Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_PRMSET *FILE CoolSpools V6 & V7 Spool Converter Parameter Sets Definition file User maintainable Low (when changed by a user)
CS_PRTTBL *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Printer Table Lookup file Install or PTF apply only Nil (changes only when PTFs applied)
CS_RPTDFN *FILE CoolSpools V6 & V7 Spool Converter Report definitions Definition file User maintainable Low (when changed by a user)
CS_RPTITM *FILE CoolSpools V6 & V7 Spool Converter Report items Definition file User maintainable Low (when changed by a user)
CS_RPTLIN *FILE CoolSpools V6 Spool Converter Report lines Definition file User maintainable Low (when changed by a user)
CS_RPTLIN *FILE CoolSpools V6 & V7 Spool Converter Report lines Definition file User maintainable Low (when changed by a user)
CS_RPTRUL *FILE CoolSpools V6 & V7 Spool Converter Report rules Definition file User maintainable Low (when changed by a user)
CS_RPTSCT *FILE CoolSpools V6 & V7 Spool Converter Report sections Definition file User maintainable Low (when changed by a user)
CS_STRIDX *FILE CoolSpools V6 & V7 Spool Converter
CoolSpools PLUS
CoolSpools V5
Excel strings work file Template file Install or PTF apply only Nil (just a template)
CS_XLSCEL *FILE CoolSpools V6 & V7 Spool Converter Report-to-Excel Map Cells Definition file User maintainable Low (when changed by a user)
CS_XLSMAP *FILE CoolSpools V6 & V7 Spool Converter Report-to-Excel Maps Definition file User maintainable Low (when changed by a user)
CS_XLSROW *FILE CoolSpools V6 & V7 Spool Converter Report-to-Excel Map Row Groups Definition file User maintainable Low (when changed by a user)
CS_XLSTXT *FILE CoolSpools V6 & V7 Spool Converter Report-to-Excel Map Constant Text Definition file User maintainable Low (when changed by a user)
CS_XMLATR *FILE CoolSpools V6 & V7 Spool Converter Report-to-XML Map Attributes Definition file User maintainable Low (when changed by a user)
CS_XMLELM *FILE CoolSpools V6 & V7 Spool Converter Report-to-XML Map Element Definition file User maintainable Low (when changed by a user)
CS_XMLMAP *FILE CoolSpools V6 & V7 Spool Converter Report-to-XML Maps Definition file User maintainable Low (when changed by a user)
SL_STRIDX *FILE CoolSpools V6 & V7 Database
Slipstream
Excel strings work file Template file Install or PTF apply only Nil (just a template)
SL_XLSCEL *FILE CoolSpools V6 & V7 Database Database-to-Excel Map Cells Definition file User maintainable Low (when changed by a user)
SL_XLSMAP *FILE CoolSpools V6 & V7 Database Database-Database-to-Excel Maps Definition file User maintainable Low (when changed by a user)
SL_XLSROW *FILE CoolSpools V6 & V7 Database Database-to-Excel Map Row Groups Definition file User maintainable Low (when changed by a user)
SL_XLSTXT *FILE CoolSpools V6 & V7 Database Database-to-Excel Map Constant Text Definition file User maintainable Low (when changed by a user)
SL_XMLATR *FILE CoolSpools V6 & V7 Database Database-to-XML Map Attributes Definition file User maintainable Low (when changed by a user)
SL_XMLELM *FILE CoolSpools V6 & V7 Database Database-to-XML Map Element Definition file User maintainable Low (when changed by a user)
SL_XMLMAP *FILE CoolSpools V6 & V7 Database Database-to-XML Maps Definition file User maintainable Low (when changed by a user)
ST_ERRLOG *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Error log Log file System Unpredictable
ST_JOBCTL *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Job Control File Control file System Medium (per control job)
ST_NUMBER *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Unique numbers Control file System High (per transaction)
ST_SCPENT *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Spooled file script entries Definition file User maintainable Low (when changed by a user)
ST_SCRIPT *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Spooled file scripts Definition file User maintainable Low (when changed by a user)
ST_SPLLOG *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Work with spooled files log Log file System High (per spooled file action)
ST_SPLMON *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Spooled file monitor definitions Definition file User maintainable Low (when changed by a user)
ST_SPLRUL *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Spooled file rules Definition file User maintainable Low (when changed by a user)
ST_SPLTRN *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Spooled file transactions Transaction file System High (per spooled file transaction)
ST_STDOPT *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Standard OptionsDefinition file Definition file User maintainable Low (when changed by a user)
ST_TRNRUL *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
Spooled file transaction rules Transaction file System High (per spooled file transaction)
ST_TRNSTP *FILE CoolSpools V6 & V7 Spool Admin Spooled file transaction steps Transaction file System High (per spooled file transaction)
ST_USROPT *FILE CoolSpools V6 & V7 Spool Admin
CoolTools
User Options Definition file User maintainable Low (when changed by a user)

Hardware Replication

If you are using a Hardware Replication solution such as PowerHA to mirror your live server's disk image to a backup server, please take note of the following points in relation to CoolSpools V7 and earlier versions of our software.

Start by consulting the documentation provided with your Hardware Replication product for recommendations on how to manage licensed software applications.  These recommendations may vary between different HA/DR products, but since licence data will almost certainly be included in the information mirrored between servers, our recommended approach is to reapply the relevant CoolSpools licence keys after each switchover - apply the DR licences when you switch over to your backup server, and apply your live licenses when you switch back to your live system.

The command string(s) that you need to execute in order to apply license keys are those that were provided when you were last issued with license keys by Ariadne Software.  If you do not have these details to hand then please request these from Ariadne Support, providing the relevant serial numbers and LPAR numbers.

Note that there should be no need to reapply CoolSpools support keys as part of a switchover unless you are planning to apply a fix pack while running from your backup server.