HP-UX: Applying maintenance level updates on IBM MQ

How to apply maintenance level updates to IBM® MQ for HP-UX using swinstall.

Before you begin

  1. Ensure you have enough disk space to apply maintenance level updates. A maintenance level update requires hard disk space for installation. In addition, the installation process might require a similar amount of disk space to save the previous level. For example, a 16 MB update might require 32 MB of space. The additional space allows a maintenance level update to be removed, and the previous level to be restored automatically.
  2. If you are running on a server with multiple IBM MQ installations, you must identify the installation. Make sure that the commands you enter run against the correct installation; see setmqenv.

You can apply and remove maintenance from a IBM MQ MQI client that is not installed on the same server as a queue manager. You do not have to stop any queue managers or logon as administrator. Because you do not have to stop any queue managers, do not do steps 1 to 3 in the following maintenance procedure.

About this task

  1. If you want to install both the base package and the maintenance update packages, install the base package separately first. Then install the maintenance update packages.
  2. If you are using the interactive installer, click Options> Change Options. Then clear the autoselect dependencies when marking software check box before selecting the maintenance update package for installation.
  3. Error messages might be seen when running swinstall, even when successfully updating an installation.
    There are two approaches you can take to handling errors in the application of maintenance.
    1. Aim for an error-free update by applying maintenance only to those components that are installed.
    2. Apply the whole maintenance package and check the error logs, error by error, ignoring the insignificant errors.
    Both approaches are described.

    Many of the insignificant errors are caused by swinstall trying to apply updates to components that are not installed. Consider whether there are any significant errors reported with the insignificant ones.

    • The following errors might not indicate a serious problem. They are written to the console, or to the swinstall panel.
      
      ERROR:   "hpux11.mycompany.com:/":
      The software dependencies for 15 products or filesets cannot be resolved.
      
      
      ERROR:   "hpux11.mycompany.com:/":
      17 filesets were determined to be skipped in the analysis phase.
      The execution phase failed for "hpux11.mycompany.com:/".
      Analysis and Execution had errors.
      
    • The following errors might not indicate a serious problem. They are written to the swjob output for a swinstall session.
      
      ERROR:   17 of 20 filesets had Errors.
      3 of 20 filesets had no Errors or Warnings.
      
      
      ERROR:   The Execution Phase had errors.
      See the above output for details.
      

Procedure

  1. Log in as a user in group mqm.
  2. Stop all applications using the IBM MQ installation.

    If you use the MQ Managed File Transfer (MFT) component, ensure that any MFT agents have finished all of the file transfers that they were engaged in. There should be no incomplete transfers associated with the agents, and their SYSTEM.FTE.STATE queues should contain no messages.

  3. End all the activity of queue managers associated with the IBM MQ installation.
    1. Run the dspmq command to list the state of all the queue managers on the system.

      Run either of the following commands from the installation that you are updating:

      
      dspmq -o installation -o status
      dspmq -a
      

      dspmq -o installation -o status displays the installation name and status of queue managers associated with all installations of IBM MQ.

      dspmq -a displays the status of active queue managers associated with the installation from which the command is run.

    2. Run the MQSC command, DISPLAY LSSTATUS(*) STATUS to list the status of listeners associated with a queue manager.
      
      echo "DISPLAY LSSTATUS(*) STATUS" | runmqsc QmgrName
      
    3. Run the endmqm command to stop each running queue manager associated with this installation.
      Read syntax diagramSkip visual syntax diagramendmqm -c-w-i-p QmgrName

      The endmqm command informs an application that the queue manager it is connected to is stopping; see Stopping a queue manager.

      • For the maintenance to proceed, applications must respond to an endmqm command by disconnecting from the queue manager and releasing any IBM MQ libraries they have loaded. If they do not, you must find another way to force applications to release IBM MQ resources, such as by stopping the applications.
      • You must also stop applications that are using the client libraries that are part of the installation. Client applications might be connected to a different queue manager, running a different installation of IBM MQ. The application is not informed about queue managers in the current installation being shut down.
      • Any applications that continue to have IBM MQ shared libraries from the installation loaded prevent you applying IBM MQ maintenance. An application might disconnect from a queue manager, or be forcibly disconnected, but keep an IBM MQ shared library loaded.
      Note: The topic, Applying maintenance level updates to multi-instance queue managers, describes how to apply maintenance to a multi-instance queue manager. A multi-instance queue manager can continue to run on one server, while maintenance is applied to another server.
    4. Stop any listeners associated with the queue managers, using the command:
      
      endmqlsr -m QMgrName
      
  4. Log in as root, or switch to the superuser using the su command.
  5. Make your current directory the location of the Service_update_package.

    The file name of the Service_update_package follows the pattern hp-Uxxxx.v11. You must prefix Service_update_package with the absolute path to the installation file. To save typing, construct the path using the $PWD variable.

  6. Run the HP-UX command swlist l= MQ_INSTALLATION_PATH MQSERIES to list all of the IBM MQ components that are installed.
  7. Decide whether to install the updates interactively, and if you want to control which components are updated.

    You can update in the following ways:

    • Silently update all the installed IBM MQ components by installing the whole maintenance package.
      
      swinstall -s $PWD/service_update_package
      MQSERIES,l=MQ_INSTALLATION_PATH
      

      The swinstall command attempts to find an installed component for every component in the update package, and updates it. swinstall writes out error messages for components that it cannot find.

    • Silently update some IBM MQ components by installing only the required updates from the maintenance package.

      If you specify update_components correctly, the update procedure can be error-free. swinstall only updates components that you have listed and components that are dependent on components you have listed.

      1. Using the list of installed IBM MQ components, create a space separated list of the components you want to update (update_components). This list requires the installation path of each component to be specified, in the form: component ,l= MQ_INSTALLATION_PATH
      2. 
        swinstall -s $PWD/service_update_package
        update_components
        
    • Interactively update some IBM MQ components from the maintenance package, selecting only the update components that are required.
      
      swinstall -s $PWD/service_update_package
      
      1. Open MQSERIES and mark the update components you want to apply. Correctly marked, there are no errors when the updates are applied. The installer resolves dependencies automatically.
      2. Select Actions > Change Product Location to change the IBM MQ installation you intend to update.
      3. Select Actions > Install. The log file tells you if there are any problems that need fixing.