Create switch load files

IBM MQ comes with a sample makefile, used to build switch load files for the supported database managers.

MQ_INSTALLATION_PATH represents the high-level directory in which IBM MQ is installed.

The sample makefile, together with all the associated C source files required to build the switch load files, is installed in the following directories:

  • For IBM MQ for Windows, in the MQ_INSTALLATION_PATH\tools\c\samples\xatm\ directory
  • For IBM MQ for UNIX and Linux systems, in the MQ_INSTALLATION_PATH/samp/xatm/ directory

The sample source modules used to build the switch load files are:

  • For Db2, db2swit.c
  • For Oracle, oraswit.c
  • For Informix, infswit.c
  • For Sybase, sybswit.c

When you generate switch load files, install 32-bit switch load files in /var/mqm/exits and install 64-bit switch load files in /var/mqm/exits64. Note: This switch load file is used by IBM MQ C applications. For Java applications, see JTA/JDBC coordination using IBM MQ classes for Java.

If we have 32-bit queue managers then the sample make file, xaswit.mak, installs a 32-bit switch load file in /var/mqm/exits.

If we have 64-bit queue managers then the sample make file, xaswit.mak, installs a 32-bit switch load file in /var/mqm/exits, and a 64-bit switch load file in /var/mqm/exits64.


File security

It is possible that your operating system might fail the loading of the switch load file by IBM MQ, for reasons outside the control of IBM MQ. If this occurs, error messages are written to the IBM MQ error logs, and potentially the MQBEGIN call can fail. To help to ensure that your operating system does not fail the loading of the switch load file, we must fulfil the following requirements:
  1. The switch load file must be available in the location that is given in the qm.ini file.
  2. The switch load file must be accessible to all processes that need to load it, including the queue manager processes and application processes.
  3. All of the libraries upon which the switch load file depends, including the libraries that are provided by the database product, must be present and accessible.

Parent topic: Configure the system for database coordination