Problem Description
There's no any response for creating or droping any procedures in DB2. Seems it's pending there, without any error returned. This time UPDATE statement on tables could be issued successfully.
Check Process
Check OS disk available
$ df -kl
Check database configure
db2 => get db cfg |more
Check system catalog tablespace
db2 => list tablespaces show detail |more
syscatspace 0x0000
Cause
It caused by issuing CREATE or DROP statement without COMMIT or ROLLBACK statement in CLP which is in non-Autocommit mode.
Solution
After you issue a COMMIT or a ROLLBACK in the CLP or close it, the pending is gone.
We must be very careful when we use client in non-Autocommit mode just like CLPs in this case.
To check the Autocommit mode in CLP issues. Refer to:
db2 => list command options
-c 自动落实 OFF
More
From this point, we could get more. Most of strange things like this(pending there and no error return) are caused by locking.
In this case, it was only the opertation on procedures being pended, so track on this thread to suppose the syscat tables related with procedures are locked then find the what probably causes it.
- 文章信息
- 版权声明: 本文可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息。
- 原文出处: http://www.aiview.com/
- 写于: 2006-03-21 [Edit]
- 作者: Alex (email &msn)

- 标签 Tags: DB2 Administration (13), DB2 Development (24), Procedure (3)


