home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IC89862 Status: Closed

SQL0901N WHEN INSERTING INTO TABLE WITH A TRIGGER CALLING MQ UDF

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
SQL0901N could be raised for inserting into a table with a 
trigger which is calling MQ UDF.  This may occur after adding a 
column 
to the subject table.  The problem may also happen if 
the trigger is calling other UDF that can not process 
expressions as input parameter. 
 
1. create a trigger on table, calling MQ wrapper function 
MQSEND. 
 
CREATE OR REPLACE TRIGGER FFFFFFFFF 
    AFTER INSERT ON TTTTTTT 
    REFERENCING? NEW_TABLE AS NEWT 
    FOR EACH STATEMENT 
BEGIN ATOMIC SELECT DB2MQ1C.MQSEND (DIGITS (NEWT.C1) CONCAT 
':ADD') FROM NEWT ; -- 
END; 
 
2. Conduct an insert, which would fire the trigger, intially 
this will not cause error 
 
INSERT INTO TTTTTTT(C1) VALUES (987654322); 
 
 
3. Alter table by adding columns 
 
ALTER TABLE TTTTTTT ADD COLUMN C2 CHARACTER(20) NOT NULL DEFAULT 
' ' 
 
 
4. The table-alter operation could cause incorrect internal 
format of the query and trigger to be changed, which in turn 
causes the query to hit the limitation of DB2MQ1C.MQSEND that 
can not process expressions as input parameter 
 
INSERT INTO TTTTTTT(C1) VALUES (987654322) 
 
DB21034E? The command was processed as a SQL statement because 
it was not a valid Command Line Processor command.? During SQL 
processing it returned: 
SQL0901N? The SQL statement failed because of a non-severe 
system error. Subsequent SQL statements can be processed.? 
(Reason "Internal error: invalid request@MQ_UnfencedServer 
::get_value".)  SQLSTATE=58004
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* The user is running MQ UDF.                                  * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 V97FP9.                                       * 
****************************************************************
Local Fix:
Recreate the trigger can bypass the error.
available fix packs:
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

Solution
The problem is firstly fixed on DB2  V97FP9.
Workaround
not known / see Local fix
BUG-Tracking
forerunner  : APAR is sysrouted TO one or more of the following: IC89970 IC96486 IC96707 
follow-up : 
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
25.01.2013
16.12.2013
16.12.2013
Problem solved at the following versions (IBM BugInfos)
9.7.FP9
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.9 FixList
9.7.0.9 FixList