IBM Support

SQL0204N errors binding db2ubind.lst / db2ats_sps.bnd in v9.5

Troubleshooting


Problem

When binding db2ubind.lst / db2ats_sps.bnd many SQL0204N errors will be displayed due to missing tables belonging to the Administrative Task Scheduler

Symptom

The following is an example of the error messages displayed:

db2 bind @dbubind.lst blocking all grant public

LINE MESSAGES FOR db2ats_sps.bnd
------ --------------------------------------------------------------------
1168 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1198 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1229 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1477 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1494 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1512 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1550 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1674 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1691 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1710 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1727 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1890 SQL0204N "SYSTOOLS.ADMINTASKSTATUS" is an undefined name.
SQLSTATE=01532
1945 SQL0204N "SYSTOOLS.ADMINTASKSTATUS" is an undefined name.
SQLSTATE=01532
1957 SQL0204N "SYSTOOLS.ADMINTASKS" is an undefined name.
SQLSTATE=01532
1974 SQL0204N "SYSTOOLS.ADMINTASKSTATUS" is an undefined name.
SQLSTATE=01532

Cause

The Administrative Task Scheduler (ATS) is a new feature that was introduced in DB2 9.5.

Internally, ATS stores task definitions and status information in two tables called SYSTOOLS.ADMINTASKS and SYSTOOLS.ADMINTASKSTATUS.  These tables will be created by the SYSPROC.ADMIN_TASK_ADD stored procedure (if they do not exist).  The tables will be created in the SYSTOOLSPACE tablespace. The SYSTOOLSPACE tablespace is a user data tablespace that is created by the DB2 administration tools and some SQL administrative routines.

In this scenario, the new tables have not been created, so BIND generates these undefined name errors.  These errors are harmless.  The ATS stored procedures were created to perform the necessary validation at runtime (not bind time).

Resolving The Problem

These errors can be safely ignored. The proper bind command should include the "sqlerror continue" clause which will suppress the error messages from being displayed.

db2 bind @db2ubind.lst blocking all sqlerror continue messages bind.msg grant public

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

Document Information

Modified date:
16 June 2018

UID

swg21305170