DB2 - Problembeschreibung
| Problem IC87900 | Status: Geschlossen |
2-PART NAME REFERENCES TO A FUNCTION MAY FAIL TO RE-RESOLVE AFTER A SCHEMA CHANGE | |
| Produkt: | |
DB2 FOR LUW / DB2FORLUW / A10 - DB2 | |
| Problembeschreibung: | |
Within the same connection, if there are multiple identical statements that reference a function in the form (<module-name>.<function-name>) under different implicit schema, DB2 may fail to re-resolve the schema name despite a schema change. They will happen when SYSIBM is the first entry in both the function path of the cached statement and the current function path. Example 1: Assuming the existence of a function M.Func1() (where M is the name of a module or PL/SQL package) in both schema A and schema B. set current path = sysibm, A, sysproc, sysfun; select M.Func1() from sysibm.dual; set current path = sysibm, B, sysproc, sysfun; -- A.M.Func1, instead of B.M.Func1, may be incorrectly invoked. select M.Func1() from sysibm.dual; Example 2: Implications where multiple connections under different authids are involved. Default function path has 'SYSIBM' as the first entry. --@USERA db2 connect to testdb db2 create or replace module test db2 "alter module test publish function test () returns char(10) begin return 'USERA'; end" db2 "select test.test() from sysibm.dual" 1 ---------- USERA db2 terminate @USERB db2 connect to testdb db2 create or replace module test db2 "alter module test publish function test () returns char(10) begin return 'USERB'; end" db2 "select test.test() from sysibm.dual" 1 ---------- USERB db2 terminate @USERA db2 connect to testdb db2 "select test.test() from sysibm.dual" 1 ---------- USERB <=== INCORRECT | |
| Problem-Zusammenfassung: | |
**************************************************************** * USERS AFFECTED: * * All * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Version 10.1 FixPack 2 * **************************************************************** | |
| Local-Fix: | |
Add a "flush package cache dynamic" statement after changing current schema. | |
| verfügbare FixPacks: | |
DB2 Version 10.1 Fix Pack 2 for Linux, UNIX, and Windows | |
| Lösung | |
Problem was first fixed in DB2 UDB Version 10.1 FixPack 2 | |
| Workaround | |
keiner bekannt / siehe Local-Fix | |
| Weitere Daten | |
Datum - Problem gemeldet : Datum - Problem geschlossen : Datum - der letzten Änderung: | 04.11.2012 08.01.2013 08.01.2013 |
| Problem behoben ab folgender Versionen (IBM BugInfos) | |
| Problem behoben lt. FixList in der Version | |
| 10.1.0.2 |
|
| 10.5.0.2 |
|