IBM Support

db2pd errors out with 'Failure: pdRememberInstanceOwnerID, rc: 0x870F00B4'

Troubleshooting


Problem

When db2pd is invoked it fails with Failure: pdRememberInstanceOwnerID, rc: 0x870F00B4

Symptom

The following message can be seen on the command line where the 'db2pd' command is being invoked.

db2inst1@db2server:~> db2pd
Failure: pdRememberInstanceOwnerID, rc: 0x870F00B4

Cause

The problem is mainly due to improper profile setting. The following could be the potential culprits.

  1. Incorrect DB2INSTANCE environment variable setting.
  2. The db2profile has not be sourced properly.
  3. DB2 commands are not being executed under the login shell.

Diagnosing The Problem

The first hint you can get is from the following:


db2diag -rc 0x870F00B4

Input ZRC string '0x870F00B4' parsed as 0x870F00B4 (-2029059916).

ZRC value to map: 0x870F00B4 (-2029059916)

ZRC class :
Global Processing Error (Class Index: 7)
Component:
SQLO ; oper system services (Component Index: 15)
Reason Code:
180 (0x00B4)

Identifer:
SQLO_NO_INSTANCE
Identifer (without component):
SQLZ_OSS_INTERNAL_ERROR_26

Description:
No instance available.

Associated information:
Sqlcode -902
SQL0902C A system error (reason code = "") occurred. Subsequent SQL
statements cannot be processed.

Number of sqlca tokens : 1
Diaglog message number: 1

Resolving The Problem

First step is to check if the environment is pointing to DB2 properly. That would be to check if the db2profile has been sourced properly and also to check if the system environment (i.e env) is outputting DB2 related paths and variables properly.

For example, the following is a simple repro of the scenario.


db2inst1@db2server:~> echo $DB2INSTANCE
db2inst1
db2inst1@db2server:~> export DB2INSTANCE=
db2inst1@db2server:~> db2pd
Failure: pdRememberInstanceOwnerID, rc: 0x870F00B4

Where, we have simply unset the DB2INSTANCE variable and it leads to the error.

To resolve the issue:
  1. The "DB2INSTANCE" environment variable should be set to the instance name of the instance you are running the command against.

    You can check the value by issuing: echo $DB2INSTANCE
  2. On UNIX and Linux the db2profile should be sourced properly (db2cshrc for C shell). This may mean the user's profile contains a command similar to:

    . sqllib/db2profile
  3. If the 'db2pd' command is being run via remote shell (i.e SSH, RSH), then it's a good idea to see if the instance's environment is being picked up properly with the remote shell.

    You can check it by issuing : env
     

[{"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"DB2 Tools - Troubleshooting","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"}],"Version":"9.7;9.5;10.1;10.5","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
16 June 2018

UID

swg21662271