cancel
Showing results for 
Search instead for 
Did you mean: 

old db2 tablespace names in HR SP22 error log

Former Member
0 Kudos

Hi all,

We are applying HR support packages on a test box. This test instance is a copy of our production ERP instance. The copy was done using a backup/restore off the PRD database.

We get an error when applying SAPKE60020 because it is trying to create a table in a tablespace that does not exist. The tablespaces it is trying to access are of the pattern PRD#STABD, PRD#POOLD etc. PRD is copied to TST.

I have updated tables TADB6, TSDB6 and IADB6 and changed PRD to TST for all tablespaces. At the OS level if I run a "db2 list tablespaces" all the names show up as TST#<tablespacename>.

I am not sure why it is trying to access PRD#<tablespace>. Is there someplace else I need to make a change from the old name?

Thanks,

Kevin

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Kevin

the statements with old tablespace names came from tables , which are used by SPAM .

If you adjusted the DB6 tables TADB6, IADB6,TSDB6 after starting applying your

support-packages , the statements with old contents of TADB6,IADB6,TSDB6

are generated into the control-tables , and are not regenerated when restarting via SPAM .

So newly refreshing your database and adjustment of Dataclasses (TADB6, IADB6,TSDB6)

before starting SPAM is the most reasonable solution for your issue , because that would be

the fastest solution on an test system .

You can also check your data-classes in DB02 (DB02->Configuration->Data Classes) .

Best regards

dirk

Frank-Martin
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Kevin,

some transports insert DDL statements into table TATAF for mass generation before executing them. You may check if this TABLE contains entries with the old tablespace names.

Regards

Frank

Former Member
0 Kudos

Frank,

Thanks! That worked. I was contemplating re-refreshing the system but this was a lot less work.

Kevin

Former Member
0 Kudos

Frank,

That worked for that support package but once I started with the next support package TATAF had been populated with the old SID name again. Do you know what populates it and where it's getting it's data from?

Thanks,

Kevin

Frank-Martin
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Kevin,

no I am running out of ideas. As Dirk mentioned the tablespace names are only maintained in tables TADB6, IADB6 and TSDB6. The SAP DDIC assembles CREATE TABLE statements for new tables using those table entries.

If you have changed all entries with the old SID in these tables and if you haven made sure that no old entries are buffered in the SAP table buffers ( $SYNC )

, the SAP DDIC should not generate CREATE TABLE statements for new tables containing the old tablespace names any more.

For existing tables that need to be converted the SAP DDIC reads out the current tablespace location from SYSCAT.TABLES and stores them into table DDSTORAGE before the table is dropped. For recreating the tables the DDIC then uses the DDSTORAGE entries. If no DDSTORAGE entries exist DDIC again falls back to TADB6, IADB6 and TSDB6.

If no table conversion is running table DDSTORAGE is usually empty.

Regards

Frank

Answers (1)

Answers (1)

Former Member
0 Kudos

Hello Kevin

The tables TADB6,IADB6,TSDB6 are buffered , please refresh the buffered

Tables .

Most probably the buffers contain the old values .

issue /$SYNC ALL

for syncing your buffered tables

Also check for correct setting of profile Parameter rdisp/bufrefmode

Best regards

dirk

Former Member
0 Kudos

Dirk,

I tried the $SYNC and even restarted SAP, still the same issue. There is something in there that has the old tablespace names in there. So it is still trying to update PRD#<tablespacename" as opposed to TST#<tablespacename>.

I have a customer message open with SAP as well, still waiting on a response (2nd go round).

If this isn't figure out before the end of the day today I will try refreshing the system again, maybe something went wrong during the refresh.

Thanks,

Kevin