Después de DBOC CLOSE, ¿por qué la DBID estaría abierta en CICS?

Document ID:  TEC1656353
Last Modified Date:  08/04/2017
{{active ? 'Hide' : 'Show'}} Technical Document Details

Products

  • CA Datacom CICS Services

Releases

  • CA Datacom CICS Services:Release:14.0
  • CA Datacom CICS Services:Release:15.0
  • CA Datacom CICS Services:Release:15.1

Components

  • CA DATACOM CICS SERVICES:DBC
Introduction:

For English-language version, please refer to TEC1275856.

Hay ciertas funciones administrativas dentro de CA Datacom/DB que requieren que una base de datos se cierre en una región CICS. Por ejemplo, al realizar el mantenimiento para cambiar la definición de la base de datos, el administrador necesita el control exclusivo de esa base de datos y no pueden ejecutarse procesos por lotes ni en línea con esa base de datos.

Para cerrar la base de datos en la región CICS, normalmente el administrador emitirá un simple comando DBOC CLOSE=###, que ### estat el DBID que se está cambiando.

Question:

Después de cerrar la base de datos con el comando DBOC CLOSE=###, una función DBUTLTY posterior para desactivar el acceso de otros a la base de datos (ACCESS STATUS=OFF...) muestra que la región CICS todavía tiene la base de datos abierta en modo de escritura. ¿Por qué se abrirá la base de datos después de que se emita el comando DBOC CLOSE?

Answer:

Dentro de CICS, se podría crear una URT dinámica que acceda a la base de datos que se está cambiando. Por ejemplo, si se ejecuta un programa de CA Dataquery, pero no existe la URT normal, se crea una URT dinámica. Esta creación dinámica también puede suceder con otros programas. Un URT dinámico puede tener cualquier número URT disponible, y dependiendo del procesamiento en la región CICS, podría haber múltiples URT con el DBID.

La clave para saber que tiene esta situación es cuando se ejecuta correctamente DBOC CLOSE=##, pero un ACCESS STATUS=OFF (u otro comando) falla, mostrando la región CICS todavía tiene el DBID abierto.

Para asegurarse de que ha cerrado completamente la base de datos en la región CICS, debe ejecutar primero este comando:

DBOC INQ=???.???.### - que ### está el DBID que necesita cerrar.

A continuación, obtendrá una lista de todos los URTs con este DBID en ellos, y luego puede emitir un DBOC CLOSE = con todas las URT enumerados. Por ejemplo, puede ver:

URT 0001(DYN OPEN    AUTO ) ...
    0001 TABLE:ABC  DBID:00333  UPDATE...

URT 0333(STD CLOSED       ) ...
    0333 TABLE:AAA  DBID:00333  UPDATE...
    0333 TABLE:ABC  DBID:00333  UPDATE...
    0333 TABLE:EOR  DBID:00333  UPDATE...

En el ejemplo anterior, emitiría un comando DBOC CLOSE=001,333 para cerrar ambos URTs.

Additional Information:

En este artículo se describe la causa más común de las regiones de CICS que no cierra la base de datos con un simple comando DBOC. Para otros problemas, o si tiene otras preguntas, abra un caso de soporte con la documentación apropiada.

Como siempre, póngase en contacto con el soporte de CA Technologies para CA Datacom si tiene más preguntas.

Please help us improve!

Will this information enable you to resolve your issue?

Please tell us what we can do better.

{{feedbackText.length ? feedbackText.length : '0'}}/255

{{status}}

Not what you were looking for?

Search Again >

Product Information

Support by Product >

Communities

Join a Community >