Por que recibo RC 02(052) en tablas eliminadas en mi RETIX?
search cancel

Por que recibo RC 02(052) en tablas eliminadas en mi RETIX?

book

Article ID: 15206

calendar_today

Updated On:

Products

Datacom Datacom/DB Datacom/AD

Issue/Introduction

For English-language version, please refer to article 15304.

Al realizar cambios en la estructura de una base de datos, parte del proceso implica actualizar el catálogo de la base de datos (llamado CXX) con las nuevas definiciones. El CXX es utilizado por muchas utilidades - p. BACKUP, EXTRACT, RETIX, REPORT y otros - para procesar en serie todas las tablas y áreas dentro de una base de datos particular.

Las tablas se eliminan ocasionalmente de una base de datos e incluso cuando se cataloga la nueva definición de base de datos, estas tablas eliminadas se mantienen en el CXX para permitir el procesamiento de copia de seguridad en estas tablas si es necesario.

Cuando se ejecuta un RETIX para reconstruir un índice después de cambiar la base de datos, ¿por qué recibo un RC 02(052) en tablas que se han eliminado?

Environment

z/OS

Resolution

Si observa un informe de CXX para la base de datos que se está procesando, puede ver un listado como éste para las tablas / áreas que se han eliminado (las líneas se han acortado para ajustarse aquí):

Base:   333         ************************************************************ Directory: MYMUFCXX
TABLE NAME - ABC                        AREA NAME  - ABC                                *HISTORY*
OCCURRENCE - TABLE-ABC      P006        OCCURRENCE - AREA-ABC               P006
TABLE ID   -     45                     AREA SQLNAME -
RECORD LENGTH    -    164 /    176      BLOCK LENGTH      -       4,096            SLACK -    0

Si mira hacia la extrema derecha, verá *HISTORY* en la línea con el nombre de la tabla / área. Esto significa que estas tablas fueron eliminadas del último catálogo de esta base de datos, y la versión de Historial se mantiene aquí en caso de que necesite ejecutar BACKUP o EXTRACT en esas tablas.

Si ha completado el procesamiento o no necesita hacer referencia adicional a estas tablas eliminadas, debe quitarlas del CXX. Esto se hace ejecutando un trabajo DBUTLTY con la función CXXMAINT - una para cada tabla que desea eliminar del CXX. Su entrada podría ser similar al ejemplo que se muestra a continuación, que tiene un informe CXX opcional antes y después para que pueda ver el cambio.

//SYSIN     DD  *
 REPORT   DBID=333,AREA=CXX
 CXXMAINT DBID=333,OPTION=DELETE,TABLE=ABC
 CXXMAINT DBID=333,OPTION=DELETE,TABLE=DEF
 REPORT   DBID=333,AREA=CXX
/*

Una vez que se hayan eliminado estas entradas del CXX, debería poder ejecutar correctamente su comando RETIX u otro comando de base de datos. Si anteriormente ejecutó una función DBUTLTY que falló, es posible que deba agregar una función RESET DBID=###,AREA=CXX al principio de esta entrada para evitar un error RC 46.

Additional Information

Para obtener más información sobre la eliminación de tablas o bases de datos, favor de consultar Deleting Databases de nuestra documentación (en ingles).

Para obtener más información acerca de la función CXXMAINT DELETE, favor de consultar la sección CXXMAINT DELETE (Delete CXX Definitions), también de nuestra documentación (en ingles). Tenga en cuenta que para la versión 15.1, se ha liberado una mejora que permitirá eliminar una tabla obsoleta del CXX mientras la base esté abierta. Consulte la opción CXXMAINT DELETEOP para mayor información.

Como siempre, por favor póngase en contacto con el soporte de Broadcom si tiene más preguntas.