After applying a Db2 fixpack, you can get SQL0443N when calling the get_dbsize_info() stored procedure.
Cause and resolving the problem:
get_dbsize_info() uses the system catalogs internally which do not get updated as part of a fix pack update, and should be updated separately using the db2updv* command based on your version.
Even after doing that you may still get the same error. This may be because of some inoperative packages. I noticed this on Windows, but it may exist on other operating systems as well… Your standard process should include rebinds after a fix pack update:
- db2 bind @db2ubind.lst blocking all grant public
- db2 bind @db2cli.lst blocking all grant public
- db2 bind db2schema.bnd blocking all grant public sqlerror continue
- db2rbind <db_name> -l db2rbind.log all
After those standard binds, you should run this script to check if there are still any inoperative packages that you need to run rebinds on explicitly:
C:\Xtivia>db2 -x "select 'REBIND PACKAGE ' || rtrim(pkgschema) || '.' || rtrim(pkgname) || ';' as command from syscat.packages where valid = 'X'" > rebind.sql
C:\Xtivia>db2 -tvf rebind.sql REBIND PACKAGE NULLID.SQLNBK0M DB20000I The REBIND PACKAGE command completed successfully.